Xcode打包ipa的基本步驟


確保電腦聯網,不然干什么都是扯淡!!

1、關於Apple ID

很簡單,任何人只要跟蘋果設備打交道,必須要有Apple ID。要想打包ipa,同樣也必須要有Apple ID,沒有的自己注冊去。

下面為在Xcode中添加Apple ID作為賬號的步驟


 
CA45BCA6-EB11-49FE-AB94-C8719E9B37E2.png

 
591BFCB0-711D-43FD-B401-887CFDF69643.png

2、關於開發者賬號

http://www.lofter.com/postentry?from=search&permalink=2555de_672c927
網上有大批的開發者賬號注冊流程,可以去參考,應該很簡單。我沒有注冊過,一直用的別人的賬號。
注冊賬號之后,可以去蘋果的開發者中心
https://developer.apple.com/membercenter/index.action
管理賬號,證書,provision profiles等等。還可以添加測試設備等。

 
4F0CD668-E1F9-48EC-B81C-B8F2795F4C97.png

點進去會有這樣的配置界面的。
 
EF6254C0-5C04-4C6C-A16C-4642681399BB.png

 

3、關於關於Certificate、Provisioning Profile

可以參考這篇文章看看他們之間的關系,Certificate(證書)就是app在打包的時候必須簽名,蘋果iOS系統在安裝app之前會驗證Certificate,否則不會通過安裝。
Provisioning Profile簡單來說就是包含Apple ID,證書,和設備ID等各種信息的集合體。一般來說,在打包ipa的時候,必須配置Provisioning Profile。

下面來看看Provisioning Profile在Xcode中的體現

 
5522E65F-E167-4F6F-B4B9-8406EF8FA5C9.png

如果前面添加了Apple ID賬號,進入這個界面,會看到有選項給你選的。
 
01B8969D-F29C-44AB-A403-64926596B143.png

我這里有2個賬號。一個是開發者,一個不是。
 
33032EB6-7974-4278-9822-11D44F669BF8.png

選擇個人賬號之后,很明顯沒有簽名,也就是對應這個Apple ID賬號在你的Mac本地是沒有對應的Provisioning Profile的。Provisioning Profile是需要去開發者中心
https://developer.apple.com/membercenter/index.action
配置的,具體怎么配置網上有教程
http://www.w-cun.com/post/ioskai_34009.htm
配置完成之后從網上下載下來保存安裝到本地的。
怎么保存安裝,第一種,直接去開發者中心下載安裝即可,這里不介紹。
第二種、直接在Xcode中點擊上圖所示的“Fix Issue”即可。

 

 
D08DC859-DC72-400D-B397-AD12F596E7EB.png

當然我的這個個人賬號不是開發者,那就更不談配置Provisioning Profile了,所以“Fix Issue”沒有什么卵用。

換一個有效的賬號,“Fix Issue”之后警告消失了!表明你可以用這個賬號進行簽名打包。


 
A727D304-81C8-400B-A30A-4ED05AB9553F.png

不論用上面哪種方法安裝Provisioning Profile,安裝完成之后,可以在這里/Users/XXXXX/Library/MobileDevice/Provisioning Profiles找到相應的文件,如果以后換了台Mac,發現不能簽名了,可以直接拷貝這些文件過去。


 
F9B02DDA-7C44-4F06-911F-8332F62D3AF5.png

4、證書簽名

在Xcode7之前,真機調試和打包ipa是必須要簽名的。但是Xcode7出來了,真機調試不需要簽名了。打包ipa也可以不需要簽名,那不是可以繞過蘋果安裝app了??想得美,如果不簽名打包的ipa那是不能安裝的!!!打包可以不需要簽名,但是你要想安裝的話,必須簽名。

簽名打包就是在編譯的過程中加入證書簽名,那肯定是需要去Xcode中配置的,目前網上有方法能實現企業級證書打包簽名不需要在編譯時,而在編譯之后。因此現在打包有兩種方式:
1、在Xcode中配置code sign,實現簽名打包ipa。適用於企業級賬號證書,個人賬號證書。
2、在Xcode中無證書打包ipa,上傳到指定工作室網站,淘寶上現在一大堆打包服務的,由別人用他們的賬號簽名ipa。適用於企業及賬號。

5、Xcode證書簽名打包

1、設置有效的Archive配置,如下圖所示,這里面一定要選擇復制“Release”,因為發布版本一定是release的,這個做程序的都知道哈。

 
913DFB03-142A-42A2-9F69-6FC44C2A8EF0.png

2、Edit Scheme

 
26099984-B13C-4915-8118-DDF850521C41.png

這里選擇剛才復制“Release”的add-hoc,當然你也可以不做第1步,這里直接選擇“Release”也是可以的,添加add-hoc純粹是為了區分,方便管理。

 
7B4099A1-2FE2-4EBC-A96E-9165480EA015.png

3、配置code sign


 
4F342FAB-9A6E-40AF-91CE-998FEBFDE560.png

還有一個地方,也要填,兩個code sign的地方都不能漏


 
9E656F89-0121-4FFB-953A-F4C363C83C73.png

4、Archive
先設置編譯設備,只能選擇iOS Device,選擇其他模擬器是不能Archive的


 
26A53F75-7920-42BC-92D3-7B114966BBD2.png

然后Archive


 
2964D74F-4D0D-4C9B-BF3B-2789BD5E6F08.png

等待,Archive會彈出這個
 
3BBB2944-08E3-43F4-A9DF-982560B98272.png

最上面的一個就是最新Archive出來的。。。

5、Export
最后就是導出了,點擊上圖中的“Export”,如下所示,很顯然第一個選項是發布app的,不要點,那是個人開發者賬號可以干的事情。


 
 

下面把三個的話,看上面的文字,寫的很清楚,打包的ipa用於在app store外面發布。
那么對於個人賬號,打包的ipa能發布么?能安裝到iOS設備上么?
答案是不能,能的話還需要越獄干嘛,還需要app store干嘛,個人賬號發布的app唯一途徑就是app store,發布app store除了我上面寫的1,2,3,4,5巴拉巴拉之外,還需要去開發者中心填一堆的東西。這里不做介紹,自己去爬文章哈。
那么這里個人賬號的打包的ipa有什么卵用呢?
卵用就是這個ipa可以安裝到一部分iOS設備中,這些設備的ID已經添加到簽名這個ipa的開發者賬號的“Devices”里面了。也就是這里有你這個設備的話,你是可以裝的!其他的都滾粗!


 
43EBD77D-CCEC-4DC0-9C4D-824E54005528.png

那么企業級開發者賬號簽名的ipa呢?能安裝到iOS設備上么?
答案是可以,這就是企業賬號的作用了。可以直接裝,也可以直接用,但是用之前iOS一般都會提示你不信任這個證書,要去設置里面設置信任,才可以使用。

扯了這么多,繼續,上面export的時候下面三個選項我沒有一一試,選擇第二個。然后選擇簽名證書對應的開發者


 
966E462E-F7B0-44E1-884A-D18DB8A89357.png

繼續


 
B5600593-4EA2-4985-AAEF-CDB0161F0DA9.png
 
8EFB11CA-BC80-4D88-B377-9AC2BF720050.png

ok,大功告成了,ipa打包成功


 
C927D096-BFE0-4FB5-B2D7-B0F7915882EC.png

6、無證書打包

淘寶上一堆企業簽名打包的(我不會告訴你我用過),他們會告訴你打包一個ipa,然后發給他,他給你簽名,你就可以用了。真的很良心啊!那這個時候你肯定不要自己去簽名ipa了。利用Xcode7的免證書真機調試功能,我們可以很簡單的打包ipa。需要設備一台。
1、設置使用無證書的開發者賬號,沒有交錢的。當然,如果下面出現警告,那么fix issuse即可。等待警告消失,就可以進行真機調試了。直接run的話app就會自動安裝到你的iphone上。


 
C4784D71-353F-42A4-BF42-006CA28AC780.png

2、在edit scheme中設置run的模式為realese。如下所示,一定要設置為release,圖示中設置的add-hoc是copy的release。你要發布,當然得release版本了。


 
D997CF5F-596B-4C2D-9526-34A021E160D2.png

3、run。這個時候手機上就安裝了app。然后在finder中全局搜索你的app。注意如果你的工程名位XXX,那么請搜索XXX.app。你會看到搜索結果。然后右鍵,“在上層文件夾中顯示”。如果有多個結果的話,記得選最近編輯的那一個。


 
614A6907-300C-4189-8C67-504E03AB5B63.png

 
865EDFBC-56D5-4607-A6E6-76C60306E366.png

4、將找到的app拖到itunes中,替換原來的應用。


 
035E87AC-6519-4AC9-B7EC-24EA9651AC5E.png

5、在文件夾中顯示,就可以找到ipa了。


 
1151A8BE-76E9-4029-AC41-1E567F72D9D7.png

 
8D1DCA8A-E4B9-440D-ACBA-DEBA72963BD3.png


作者:KevinTing
鏈接:https://www.jianshu.com/p/a19d2d0747ee
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM