引入簡書:http://www.jianshu.com/p/b600c16308f4
# iOS開發筆記 - 上線流程
>

> 在開始講述上線流程之前,我們假設你已經擁有了Apple ID,但是還沒有成為付費的開發者,我們就從申請成為付費開發者開始。
>

圖1. 用瀏覽器打開蘋果開發者網站
* * * * *

圖2. 使用Apple ID登錄開發者網站
* * * * *
> 注意,如果你是第一次使用你的Apple ID登入蘋果開發者網站,你會看到如下所示的頁面,這個時候你需要同意“蘋果開發者協議”,并提交你的請求,這個時候你的Apple ID就已經成為一個開發者ID了。

圖3. 蘋果開發者協議頁面
* * * * *

圖4. 同意蘋果開發者協議并提交申請
* * * * *

圖5. 加入蘋果開發計劃
* * * * *
接下來的頁面中你會發現一個注冊的按鈕,點擊它就可以申請成為付費的開發者了。

圖6. 點擊注冊按鈕
* * * * *

圖7. 點擊開始注冊
* * * * *
在接下來的頁面中選擇開發者類型后就可以繼續了。

圖8. 選擇開發者類型并繼續
* * * * *
> 注意:個人開發者需要每年支付99美元的費用,而企業開發者需要每年支付299美元的費用。
> 接下來需要填寫一大堆的注冊信息,而且需要本土語言和英語兩種版本,然后還得再次同意一個你不太愿意閱讀但是必須得同意的協議。點擊“Continue”后會進入下一個頁面,如果剛才的信息無誤,就再次點擊“Continue”按鈕進入準備支付的頁面。

圖9. 填寫注冊信息
* * * * *

圖10. 同意協議并且繼續
* * * * *

圖11. 點擊支付按鈕
* * * * *
> 接下來還得登錄一次,然后終于可以把錢付給Apple了,真是不容易啊,不過你還得有Visa信用卡或者是MasterCard。
>

圖12. 再次登錄
* * * * *

圖13. 填寫付費信息的頁面
* * * * *
> 剩下的步驟你就按照網頁上的提示操作就可以了,國內的很多銀行在進行境外支付時可能會給你來電話確認支付授權,所以上面填寫的信用卡信息以及賬單聯系人信息必須匹配,否則基本上會支付失敗,即便你通過網上銀行開通了境外支付。在上面的頁面中還需要填寫發票信息,如果需要機打發票的話這里的信息就不要填錯了哈。
> 支付成功后,蘋果會在48小時內對訂單進行處理,然后你可能會收到郵件要求到指定的頁面上傳身份證照片。如果遇到任何問題,你可以撥打蘋果開發的售后服務電話,號碼是4006701855。成為開發者后再次登錄,就會看到如下所示的頁面。

圖14. 成為付費開發者后重新登錄
* * * * *

圖15. 付費開發者登錄后的界面
* * * * *
> 上圖中點擊紅框的鏈接可以進入創建證書、應用ID和Profiles文件的頁面;點擊籃框的鏈接可以進入管理自己的App的頁面。

圖16. 創建證書的頁面
* * * * *
> 點擊上面頁面中左側的證書,并在右側點擊“+”就可以創建證書。
>

圖17. 選擇證書類型的頁面
> 在上面的頁面中選中紅框中的選項可以創建開發證書,主要用于真機測試;選中藍框中的選項可以創建產品證書,用于應用上線到App Store或小范圍發布。我們下面要演示完整的項目上線流程,因此在這里選擇藍框中的選項“App Store and Ad Hoc”并點擊“Continue”按鈕繼續。
> 接下來的頁面會提示你創建證書需要一個證書簽名請求文件,因此我們需要在自己的Mac系統上使用“鑰匙串訪問”應用創建一個證書簽名請求文件
* * * * *

圖18. 提示創建證書簽名請求的頁面
* * * * *

圖19. 通過Launchpad打開“鑰匙串訪問”應用
* * * * *

圖20. 通過“證書助理”創建證書簽名請求
> 注意:在上面的界面中要選中“從證書頒發機構請求證書…”菜單項才能打開如下所示的界面。
>

圖21. 將證書簽名請求文件保存到桌面
* * * * *

圖22. 選擇證書簽名請求文件并繼續
* * * * *
> 接下來可以將生成的證書下載到下來并雙擊添加到“鑰匙串”中。
>

圖23. 下載創建好的證書
* * * * *

圖24. 將證書添加到鑰匙串中
* * * * *

圖25. 在“鑰匙串”中查看證書
* * * * *
> 接下來選中頁面左側的“Identifiers”并點擊右側的“+”來注冊要上線的應用程序ID
>

圖26. 注冊應用的ID
* * * * *

圖27. 填寫應用ID的名稱和Bundle ID
* * * * *
~~~
注意:上面的Bundle ID應該跟Xcode中項目的Bundle ID保持完全一致,此處最好確認一下Xcode中的Bundle ID,如下所示。
~~~

圖28. 在Xcode中查看或修改項目的Bundle Identifier
* * * * *

圖29. 可以對項目使用的服務進行設置并繼續
* * * * *

圖30. 完成應用ID注冊
* * * * *
> 上面一步完成后還要點擊“Done”按鈕,然后就可以在“App IDs”中看到所有注冊過的應用程序的Bundle ID。接下來就可以用證書和注冊的應用程序ID來生成“Provisioning Profiles”,你可以把這個文件理解為一個配置文件(后文中將“Provisioning Profile”統稱為“配置文件”),有了這個文件才能對你的項目代碼用證書進行簽名并完成上線的操作。

* * * * *
圖31. 查看Provisioning Profiles

* * * * *
點擊頁面右上方的“+”開始創建“配置文件”。

圖32. 創建新的“配置文件”
* * * * *

圖33. 選擇“配置文件”的類型
* * * * *

圖34. 選擇應用程序ID
* * * * *

圖35. 選擇使用的證書
* * * * *

圖36. 給“配置文件”命名
* * * * *

圖37. 下載“配置文件”并點擊“完成”按鈕
* * * * *
> 下載好的配置文件可以雙擊添加到Xcode中,待會就可以使用這個配置文件來完成項目的上線不過現在我們暫時放下這件事情,回到開發者中心,進入“iTunes Connect”。
>

圖38. 回到開發者中心
* * * * *

圖39. 進入iTunes Connect
* * * * *

圖40. 管理App
* * * * *

圖41. 新建App
* * * * *

圖42. 填寫App相關信息
* * * * *
~~~
說明:上圖中“名稱”是你的應用在App Store中顯示的名字;“套裝ID”是Xcode中項目的Bundle Identifier;“SKU”可以填寫當天日期外加一個編號即可,這是你為你的應用指定的一個標識符。
~~~
接下來的頁面中可以指定應用的類別。

圖43. 指定應用程序類別并存儲
* * * * *

圖44. 點擊“1.0準備提交”填寫App相關信息
* * * * *

圖45. 添加App預覽和屏幕快照
* * * * *

圖46. 編寫應用描述和關鍵詞
* * * * *

圖47. 設置應用圖標并編輯應用分級
* * * * *
~~~
注意:應用圖標必須提供1024*1024的圖片且圖片不能設置alpha通道(透明度);應用分級是為了確定應用使用群體的年齡段,如下圖所示。
~~~

圖48. 編輯應用分級

圖49. 設置完圖標和應用分級后的效果
* * * * *

圖50. 提供聯系人信息和演示賬號
* * * * *
~~~
說明:如果你的應用中有需要登錄后才能使用的功能那么就必須提供一個演示賬號以供審核應用時使用。
~~~

圖51. 選擇發布方式并保存應用信息
> 接下來就要回到Xcode提交應用程序的代碼以供審核,如下圖所示我們可以在項目的“Build Settings”中設置代碼簽名和“配置文件”,可以在上面的工具欄中選中“Generic iOS Device”,然后用“Product”菜單中的“Clean”菜單項對項目做一次清理,再用“Archive”菜單項來對項目進行打包操作。需要提醒的是,如果代碼簽名出現問題,可以通過如下圖所示的“Fix issue”按鈕進行聯網修復。

圖52. Xcode中設置代碼簽名和“配置文件”
* * * * *

圖53. 聯網修復代碼簽名問題
* * * * *

圖54. 通過“Product”菜單的“Archive”菜單項啟動打包上傳工具
* * * * *
> 點擊上圖紅框中的按鈕可以上傳項目到App Store;點擊藍框中的按鈕可以對項目進行驗證;點擊綠框中的按鈕可以將項目導出成ipa文件。
>

圖55. 驗證項目界面
* * * * *

圖56. 導出項目的界面
* * * * *

圖57. 選擇導出的目標設備
* * * * *
導出成功后會看到如下圖所示的文件。

圖58. 導出后生成的ipa文件
* * * * *
> 可以使用類似于蒲公英這樣的內測分發工具將ipa文件上傳生成一個二維碼,這樣可以讓所有的測試機通過掃描二維碼安裝該應用來進行內測,如下圖所示。
>

圖59. 蒲公英界面
* * * * *

圖60. 上傳ipa文件并生成二維碼
* * * * *

圖61. 上傳成功后打開應用對應的頁面
* * * * *
> 經過嚴格的內測后,是時候將應用上傳到App Store啦。
>

圖62. 點擊“Upload”上傳到App Store
* * * * *

圖63. 正在上傳應用到App Store
* * * * *
~~~
這個過程可能會比較漫長,你可以放輕松一些,沖一杯咖啡獎勵一下自己然后等待上傳的結果。
感覺怎么樣,是不是覺得上線一個項目還真不容易。這就對了,因為成年人的生活中本來就沒有容易二字。
~~~
- 關于我們
- ApiCloud
- 支付模塊
- 微信支付--wxPay(客戶端)
- 微信支付--wxPay(服務端)
- 支付寶支付--aliPay(客戶端配置)
- 支付寶支付--aliPay(服務端配置)
- DoT模板
- 緩存模塊
- 監聽模塊
- 百度定位模塊
- 設置狀態欄字體顏色
- 選擇城市插件
- 跨頁面執行方法
- 安卓-點擊返回事件
- 上傳圖片模塊
- 點擊彈出放大圖片層
- 魅族手機apiready問題
- 分享
- 跨win或frm執行腳本
- 關于ios數字自動識別成手機號
- 百度地圖bMap
- 語音識別模塊
- tabBarMenu底部導航
- 第三方登錄
- QQ網站和appQQ賬號的統一問題解決
- 微信登錄
- QQ登錄
- 微博登錄
- 上拉加載、下拉刷新模塊
- 圖片緩存
- 文件和圖片緩存機制分享
- PHP
- 支付寶及時到賬
- no input file specified報錯解決
- thinkphp 整合kindeditor
- 整合tpshop微信模塊到thinkcmf中
- thinkphp3.1.3整合支付寶
- 網站接入QQ OAuth2.0登錄教程
- ThinkPHP整合百度編輯器Ueditor
- PHP加快執行效率的寫法規范
- ThinkPHP操作大全
- PHP操作大全
- Thinkphp中SQL操作返回值
- php5.3 foreach 使用&(與運算符)引用賦值要注意的問題
- mysql給字段追加值
- 阿里大魚短信平臺接入
- Navicat 導出 Mysql 數據字典
- php 面向對象全面教程
- PHP5下調用SOAP
- PHP處理時間格式添加空格
- 偽裝URL請求(.htaccess)
- url請求參數加解密
- JS插件
- artDialog彈窗-頁面傳值
- jQuery點擊遮罩彈出層固定居中
- jeBox原生彈窗
- bxslider輪播
- js生成指定位數隨機數
- 發送短信倒計時
- js調試
- jQuery.validator 表單驗證規則
- Swiper 輪播
- 獲得焦點時-圖片抖動
- uploadify無刷新上傳圖片
- 導航下拉隱藏上拉顯示
- 獲得焦點時-加黑色蒙版
- jquery.qrcode.js生成二維條形碼(支持中文)
- jquery.qrcode.js生成二維條形碼(官方不支持中文)
- nth-child 選擇器
- 無刷新點擊實現加載更多數據
- 刷新頁面方法
- 判斷滾動條向上向下
- 跨瀏覽器復制jQuery-zclip
- js校驗表單后提交表單的三種方法
- 用JS判斷下拉框是否選中
- div中滾動
- 提交時彈出模態框
- 當圖片不顯示時替換方法
- 前端
- CSS3
- HTML5
- css技巧
- 移動端rem
- Flex布局
- 電商詳情滾動條監聽
- VueCircleMenu圓環按鈕
- iframe自適應頁面高度
- 百度Echart
- input:radio改變選中顏色
- Jquery
- 響應式布局基本實現Media Query
- 循環輸出只輸出新內容
- 小程序
- wx.request坑
- 概要
- git操作
- 本地記住密碼
- 操作
- 生成ssh公鑰 記住密碼
- git避坑
- ES6學習手札
- 調試小插件
- 谷歌插件Postman
- PHP調試助手
- WordPress
- 緩存服務器Redis
- 在線代碼運行 Docker
- 在ubuntu下怎樣安裝https
- BrowserSync 瀏覽器同步測試工具
- getmarkman高效的設計稿標注、測量工具
- PHPstrom軟件
- 服務器
- linux 安裝搭建服務器配置及nginx配置
- tpshop的nginx 服務器配置方法
- (服務器訪問文件404解決辦法)IIS 之 添加MIME擴展類型及常用的MIME類型列表
- mysql部分
- mysql緩存
- MySql監控工具--mytop
- MySql主從搭建
- mysql優化
- Mysql 復制 (主從復制)
- iOS開發筆記 - 上線流程
- VUE避坑指南
- 從零開始學Vue
- Vue-cli
- Webpack
- VUE小記
- npm打包空白
- 打包背景圖片/項目圖片不顯示
- VUE避坑指南/elementUI upload 自定義http-request上傳
- 關于watch監聽路由重復加載方法
- 解決加載內容的時候閃動問題
- vuecli沒有network訪問地址
- python學習
- python初始
- pytho內置函數大全
- win10 播放器播放TS文件問題
- 設計網站
- VUE避坑指南/VUE-CLI部署空白
- swiper使用問題
- uni-app學習手冊
- 目錄結構
- layUI
- nodesass版本sassloader版本問題