IOS APP Platform Guide
一、申請開發者賬号

1、申請個人賬号-$99
https://developer.apple.com/enroll/cn/complete/
2、申請企業賬号-$99
https://developer.apple.com/enroll/cn
1. 申請D-U-N-S 編号
https://developer.apple.com/enroll/cn/duns-lookup/#!/search
2.申請企業賬号
二、iOS開發證書申請教程(真機調試測試)
1、iOS打包證書配置最詳細的教程(新手必看)
https://blog.csdn.net/wds326598/article/details/53036112
2、Xcode打包ipa的基本步驟(有證書和無證書)
http://www.cocoachina.com/ios/20170623/19623.html
3、不用開發者賬号申請ios證書真機調試
https://segmentfault.com/a/1190000010488977
免開發賬号申請ios證書的神器就是Appuploader,是ios app測試及上架的輔助工具。--免費試用一個月
三、ionic項目ios真機部署(不需開發者賬号)
1、環境安裝
1.安裝ionic和cordova
npm install -g ionic
npm install -g cordova
2.建立一個新項目
ionic start app_name template_name
3.進入項目目錄cd app_name,添加平台
ionic cordova platform add ios/android
ionic build ios
4.在真機上運作需要
npm install -g ios-deploy
5.在虛拟機運作時需要
npm install -g ios-sim
6.利用xcode在真機上部署ios項目
找到項目檔案夾,platforms -> iOS -> xxx.xcodeproj 檔案,輕按兩下打開(即在xcode中打開了這個項目)
點選菜單欄 xcode -> preferences -> Accounts 添加Apple ID賬号
7.運作:将裝置通過資料線連上電腦
在視窗左上角運作按鈕的右側選擇你的裝置後,點選運作,即可開始真機部署;
或在指令行輸入
ionic cordova run ios
2、基于ios系統ionic 項目開發跨域問題
https://blog.csdn.net/u012365780/article/details/80449682
(1) 問題
打開xcode 控制台,你會發現所有請求都會出現如下錯誤資訊。
[html] view plain copy
1. {"headers":{"normalizedNames":{},"lazyUpdate":null,"headers":{}},"status":0,"statusText":"Unknown Error","url":null,"ok":false,"name":"HttpErrorResponse","message":"Http failure response for (unknown url): 0 Unknown Error","error":{"isTrusted":true}}
(2) 原因
ios 的系統中存在兩個網頁浏覽器,一個是UIWebView,一個是WKWebView,在以前ionic 建構的時候預設使用的是UIWebView,而這個網頁浏覽器并沒有強制的實施了CORS。但是那是以前,而現在所建構的ionic的項目,都預設使用WKWebView。這個家夥呢,強制實施了CORS
(3) 解決
1.預設使用UIWebView
1.1 方法:移除cordova-plugin-ionic-webview插件
$ ioniccordova plugin remove cordova cordova-plugin-ionic-webview --save
1.2 或者在項目中強制使用UIWebView,在config.xml中配置
<preference name="CordovaWebViewEngine"value="CDVUIWebViewEngine" />
如果app的體驗沒什麼要求,那完全可以這樣搞。但在現實開發中肯定是不可取的。
(4) finder中全局搜尋你的app
http://www.cocoachina.com/ios/20170623/19623.html
3、run。這個時候手機上就安裝了app。然後在finder中全局搜尋你的app。注意如果你的工程名位XXX,那麼請搜尋XXX.app。你會看到搜尋結果。然後右鍵,“在上層檔案夾中顯示”。如果有多個結果的話,記得選最近編輯的那一個。
(5) 判斷裝置
ionic3 ionic.Platform.device();
https://ionicframework.com/docs/api/platform/Platform/