ionic 使用xcode打包IOS,並且新增微信白名單

weixin_34208185發表於2017-08-03

導語ionic打包ios需要用到xcode開發者賬號開發證書釋出證書證書描述檔案。如果沒有開發者賬號,請先去註冊開發者賬號,本文從建立證書開始講起。


一、建立證書前的準備

1)、使用蘋果電腦開啟鑰匙串訪問

6259044-ca8fbb7bd22f6caa.jpg
使用蘋果電腦開啟鑰匙串訪問

2)、點選鑰匙串訪問 >>證書助理>>從證書頒發機構請求證書


6259044-1509cdc88c6b48c5.jpg
選擇--從證書頒發機構請求證書

3)、填寫資訊,並把生成的.certSigningReuqest檔案儲存到桌面。


6259044-a1e73720f3dde189.jpg
填寫資訊

二、建立證書

1)、開啟https://developer.apple.com網址建立我們需要的證書


6259044-d1007448c2d5f6a0.png
選擇Account這一欄

2)、使用開發者賬號登入


6259044-1ad158fa2ebae156.png
使用開發者賬號登入

3)、開啟建立證書頁面


6259044-bbf32bb548fc0c84.png
找到Certificates(證書)

4)、成功開啟之後可以看到如下頁面


6259044-515ee21b76ba509a.jpg
建立證書頁面,一共四個欄目

5)選擇Certificates新建證書,點選‘+’號按鈕


6259044-f442205579e6a647.jpg
新增證書

6)、選擇建立證書的型別


6259044-a988244d2e0e6e8c.jpg
開發證書用於真機除錯、測試。釋出證書用於上傳蘋果商店。

7)、選擇鑰匙串訪問生成的檔案


6259044-e84aa6899940e8d1.jpg
選擇鑰匙串生成的檔案

8)、證書建立完成


6259044-1a80521c3eab5f82.jpg
下載證書,雙擊執行匯入鑰匙串訪問

三、建立專案ID

1)、選擇App IDs新建專案id


6259044-0502332247f35f36.jpg
新建專案id

2)、填寫專案唯一識別符號(包名)



6259044-5e499ee925d3132b.jpg
新增包名

四、新增真機除錯裝置

1)、選擇Devices 點選+號新建


6259044-c2aa001293de564e.jpg
新建真機除錯裝置

2)、填寫裝置的UUID


6259044-c7017a24e8ac079b.jpg
填寫裝置的UUID

3)、獲取裝置的UUID,使用USB連線你的裝置到電腦,並開啟iTunes


6259044-4d7779bd7e953961.jpg
獲取裝置的UUID


6259044-8e02117b3847f0aa.jpg
獲取裝置的UUID

五、建立證書描述檔案

1)、選擇Provisioning Profiles


6259044-2ef951dca02968b1.jpg
新建證書描述檔案

2)、選擇描述檔案的型別


6259044-bbcf00d674c16af2.jpg
選擇描述檔案的型別

3)、選擇專案ID


6259044-5f5851a3576b5322.jpg
選擇專案ID

4)、選擇證書


6259044-69a24ab7148bf389.jpg
選擇需要描述的證書

5)、選擇除錯裝置


6259044-07287b986c89b3a6.jpg
選擇除錯裝置

6)、填寫描述檔名稱


6259044-b71868a76a41379a.jpg
填寫描述檔案的名稱

7)、下載描述檔案,雙擊執行。


6259044-389933023ce8c622.jpg
下載證書描述檔案

六、在xcode中開啟ionic專案

1)、雙擊執行專案下的/platforms/ios/xxx.xcodeproj檔案.

如果沒有,記得先ionic platform add ios新增ios專案


6259044-84c82f9d7084a81c.jpg
執行.xcodeproj檔案

2)、開啟後我們單擊專案名


6259044-55fca81219c76dc4.jpg
單擊專案名稱

3)、單擊TARGETS下的專案,就可以看到打包的設定皮膚


6259044-42938c4a25a48fc8.jpg
打包設定皮膚

七、設定自動簽名

1)、點選Build Settings,往下拉,找到Signing


6259044-0648597b3fec36b3.jpg
設定自動簽名

2)、點選啟用。


6259044-78a8318f303db8fb.jpg
啟用自動簽名

3)、選擇自動簽名的證書(如果之前成功下載證書並且已經新增到鑰匙串訪問)


6259044-64cac3a801a7c107.jpg
選擇證書

八、設定手動簽名

1)、點選Build Settings,往下拉,找到Signing


6259044-7e6bbf1e65b1513f.jpg
設定手動簽名

2)、選擇證書


6259044-2001b14eb02b6d6a.png
選擇證書

九、打包

1)、選擇Generic iOS Device


6259044-60bbf85bec393bd2.jpg
打包

2)、在Product下選擇Archive


6259044-da5b885b9f935ade.jpg
打包

3)、打包成功


6259044-f4df52c1f14842bd.jpg
打包成功

4)、匯出企業版


6259044-ec6daac7f1d25292.jpg
匯出企業版

5)、選擇釋出證書


6259044-55435efee848e9b9.jpg
選擇釋出證書

6)、匯出相容所有裝置


6259044-ab01ef84cc12185a.jpg
匯出相容所有裝置

7)、匯出到本地磁碟


6259044-428d9c17129e583b.jpg
匯出到本地磁碟

8)、在本地磁碟檢視ipa


6259044-29f4cdacf89c1c2b.jpg
在本地磁碟檢視檔案

十、新增微信白名單

1)、打包成功後發現微信支付不可用,真機除錯列印錯誤--‘微信未安裝

error:"This app is not allowed to query for scheme weixin"

6259044-5d7767f4db420fb9.png
提示微信未安裝

2)、在info.plist中的 LSApplicationQueriesSchemes 把微信加入白名單

注意 LSApplicationQueriesSchemes 的型別是Array。

6259044-041c6e10dbce1fcb.jpg
info.plist中把微信加入白名單

3)、如果需要把別的應用加入白名單,就繼續在LSApplicationQueriesSchemes下面新增item,新增的名稱根據報錯的資訊來填


6259044-bb47166c3617a215.jpg
報錯微信app未安裝

如果提示你‘吃不飽’未安裝,你就在info.plist中新增‘吃不飽’!


結語:到這裡ionic打包iOS就已經完成了。下面總結一下幾點需要注意的地方

1、我們用鑰匙串生成的.certSigningReuqest檔案,只有在當前電腦本地生成的,然後上傳到開發者賬號建立證書,這樣下載下來的.cer檔案執行後,鑰匙串才有證書及對應的祕鑰,這樣才能正常使用。

2、證書分為開發和釋出兩種,不管是真機除錯還是上傳到AppStore都是需要的,用來證明自己開發者的身份。

3、Provisioning Profiles證書描述檔案,它把我們的專案ID開發證書硬體除錯裝置Device繫結到一塊。不管是真機除錯,還是釋出,都離不開它。

4、用xcode開啟iOS專案是雙擊執行platform/ios/xxx.xcodeproj檔案。

5、info.plist中的 LSApplicationQueriesSchemes 可能是沒有的,需要我們手動新增

6、使用微信支付的外掛,如果沒有描述檔案package.json,在cordova7.0是裝不上的,降低到cordova6.5就可以了

解除安裝cordova:          npm uninstall -g cordova

安裝指定版本cordova:         npm install -g cordova@6.5.0

相關文章