在一個app歷經數週持續開發和多個版本快速內部迭代以後,當咱們須要把這個版本發佈到咱們實際應用場景中,面對咱們真實用戶去say hi時,若是自身產品在發佈(內測版本)以前確實找到一些潛在切相對穩定的種子用戶,你應該會常常聽到用戶抱怨問題.每每集中以下幾個點上: 是否真的解決個人需求? 版本獲取的流程是否複雜? 版本發佈響應速度是否足夠快? ... ...等等. 當你真的開始面對最終用戶,你才發現這只是一個開始...ios
拋開產品自身問題而言,快速而穩定響應速度成爲決定是否可以留下種子用戶一個很關鍵的key.app
其實針對應用分發,iOS平臺已經針對不一樣使用場景作了充分考慮,這直接體現不一樣的帳號類型上.蘋果開發者計劃分爲我的、公司、企業、和教育開發者四種帳號類型.我的開發者帳號應該是最爲常見的,年費爲$99刀一年,該帳號在App Store銷售者只能顯示我的的ID.而且我的帳號只能有一個開發者和100個蘋果的iOS設備UDID測試. 因此若是你的應用要發佈種子測試使用,100個UDID仍是很是捉襟見肘的.測試
Company開發者年費更我的帳戶同樣也是$99刀一年,該帳號在App Store銷售者能夠顯示相似Studios,或者自定義的團隊名稱。最重要的是公司帳號能夠容許多個開發者協做開發,比我的多一些賬號管理的設置,能夠設置多個Apple ID,分4種管理級別權限,100個蘋果的iOS設備UDID測試。可是,申請時須要填寫公司的鄧白氏編碼(D-U-N-S),D-U-N-S鄧白氏碼能夠在蘋果官方網站免費申請。網站
而企業開發者帳號費用爲$299一年, 該帳號開發應用不能發佈到App Store,只能企業內部應用,蘋果的iOS設備UDID數量不限制。這對大批量使用app來講極爲便利,因此企業帳號適合不但願上線App Store,可是須要企業內部,好比1000人的iOS設備都部署。ui
蘋果爲了適應不一樣的使用場景,提供了四種不一樣的應用發佈方式:蘋果應用商店發佈(App Store),蘋果應用商店批量購買發佈(Volume Purchase Program),In-House企業應用發佈,Ad Hoc應用發佈方式.編碼
前兩種不在贅述,重點說一下In-House企業應用發佈和Ad Hoc兩種方式.3d
In-House企業應用是不能提交到App Store,發佈應用的具體內容也是不須要蘋果官方審覈.安裝設備的數量目前也沒有任何限制.因此權限最爲開放,適合針對支持開放大批量對外用戶測試使用.因此你看到不少第三方開放渠道下載IPA其實基於其餘企業帳號來支持的.code
固然相對於In-House方式開放測試方式,蘋果公司爲了方便應用開發者在真機上進行應用測試,也支持Ad Hoc方式發佈應用,應用的具體內容也不須要通過蘋果的評審,但限制每一個應用不能發佈到超過100個設備上。若是應用須要小規模的測試或者企業規模很小能夠採用這種方式發佈企業應用.orm
首先進入登陸企業級帳號Member Center,在Certificates-Production中建立一個證書:blog
選擇In-House and Ad Hoc,點擊繼續.注意的是,若是已經建立了In-House的證書,就不能再建立了,該選項會變灰,以下圖。若是要從新建立,能夠先在以前的列表中將該證書Revoke掉:
點擊新建進入下一步須要上傳一個證書,在Mac系統中進入"鑰匙竄訪問",選擇「鑰匙串訪問」-「證書助理」-「從證書頒發機構請求證書」:
輸入經常使用郵箱地址,並存儲到本地:
將生成的「CertificateSigningRequest.certSigningRequest」文件上傳到開發者中心,點擊下一步生成,最後將生成的證書下載到本地,雙擊打開。就能夠在鑰匙串中看到證書已經成功安裝了:
從新回到開發者中心Member Center,在「Identifiers」-「App IDs」中建立一個應用對應的App ID,當前使用的是Explicit App ID,Wildcard App ID應該一樣也能夠:
在Provisioning Profiles中添加一個與剛剛建立的AppID相應的Profile,選擇「In House」:
建立的Provisioning File選擇剛剛建立的App ID:
建立並生成Profile後,下載到本地,雙擊打開,添加到資料庫中,而後Xcode在Build Phases中找到Code Signing,把Provisioning File設置剛纔建立描述文件.在Coding Signing Identity選擇Distribution:
而後把工程部署Target選成iOS Devices,找到Product->Archive,則自動開始打包.記住對應打包選擇帳戶必定是企業帳戶,導出IPA文件,整個打包流程就完成.這個IPA文件則能夠藉助相似TestFlight、Fir、蒲公英這種公共第三方很方便對外進行分發.只須要分享給最終用一個二維碼或者一個URL地址用戶就能夠在設備任何地方打開並下載.很是簡單實用且維護成本低廉.