appStore上傳蘋果應用程序軟件發佈流程

【原文地址:http://blog.sina.com.cn/s/blog_68661bd801019uzd.html】

首先確定帳號是否能發佈, https://developer.apple.com/account如果你打開Provisioning Portal,然後點擊DisTribution看到的是下圖中那樣,再考慮按下面的方法弄


appStore上傳蘋果應用程序軟件發佈流程


(1)圖中加號是灰色,點擊圖中的加號,沒有反應,說明你的帳號不能發佈,找你們老大要帳號,正常情況是加號是黑色,點擊會彈出一個創建證書界面。
 (2) 沒有發佈證書,如果有,是圖中那樣,如果你沒有或者狀態不對,則你需要新建證書,下面的內容會一步步介紹。
(3)發佈還需要用到Xcode,就是需要一個蘋果系統,最好要有源代碼。(因爲用ipa上傳更復雜,可能有的公司是外包買的代碼,然後自己公司上傳,對一個新手來說,第一次就用ipa上傳可能會崩潰。)


1.進入開發者中心,進入到iOS Provisioning Portal界面,然後進入app ids界面創建一個專爲發佈軟件用的appid,併爲其創建證書

appStore上傳蘋果應用程序軟件發佈流程

名字不是很重要,隨意
appStore上傳蘋果應用程序軟件發佈流程
      第一個選項意思是說創建單一應用程序的appid,要用到:遊戲中心,應用內購買、數據保護、和iCloud,推送,等一些特殊的情況,或者你心情不爽非要創建一個爲單一程序使用的appid,就選這個,不能使用*。
     第二個項是我覺得是比較普遍的,因爲大多數應用都是企業應用,大部分都有自己的網站,能弄到網站上購買的,儘量到網站上購買,因爲在手機上,蘋果審覈的時候會問,對這個敏感,說不好就涉及分錢的問題。
     如果你無法確認選哪一種,那就簡單的兩個問題,(1)你的應用是不是遊戲(2)你的應用是不是要付款,類似淘寶,京東購物。(3)有沒有用到推送。  如果這幾個都沒有涉及到,那麼就選第二個吧。使用*,*代表的是匹配任意字符,就是你的應用程序名稱任意。Bundle ID怎麼寫,我給個例子:(com.csc.*)。蘋果建議使用完整的app ID進行上傳。因爲如果你在以後想增加推送等其它功能,如果之前不是完整的app ID那麼你需要重傳軟件。如果你選的是第一項,畢竟推送是蘋果軟件一大特色,用的也很多,那麼你不能使用*,假設你的項目名叫wahaha,那麼appid就應該是com.csc.wahaha。
      項目名不要用中文,而新手可能會奇怪,手機桌面上軟件名爲什麼是中文的呢,那個是在plist裏面設置的。

appStore上傳蘋果應用程序軟件發佈流程

     上面圖上的內容,如果是第二種appid,那麼不用看,如果是第一種,則用到什麼就選什麼。然後點擊繼續。

創建完appid後再添加一個證書,發佈證書,必須是管理員身份,組員 身份沒有Distribution權限,無法發佈。
      新手可能有疑問,Certificates與Provisioning Profiles的功能和區別是什麼?Certificates就是證書,Provisioning Profiles是配置。證書是用於鑰匙串的,而配置文件是用於xcode的。應該先弄一個證書,再弄配置文件。最終這兩個都是必須的。
      選擇Certificates,點擊加號,選擇App Store and Ad Hoc,點擊繼續,知道看見下圖appStore上傳蘋果應用程序軟件發佈流程
然後打開鑰匙串,appStore上傳蘋果應用程序軟件發佈流程

然後點擊電腦狀態欄上的鑰匙串,然後從頒發機構請求證書appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

按照上面的操作,填上你帳號郵箱地址,名稱,然後點擊繼續,然後存儲到磁盤,保存到桌面
appStore上傳蘋果應用程序軟件發佈流程
然後點擊choose Files,選擇剛纔那個CertificateSigningRequest.certSigningRequest創建的那個證書,然後就創建完成,然後下載發佈證書,安裝到鑰匙串裏。

然後在弄一個Provisioning Profiles文件,同樣的辦法,點擊加號,選擇Appstore,然後選擇你創建的那個appid,包含創建的證書,然後爲證書取個名字。等到看到Your provisioning profile is ready.然後下載配置文件,然後雙擊打開安裝到xcode中。在最新版本的xcode安裝這一步是不需要了。在4.X版本中會看到如下圖:

appStore上傳蘋果應用程序軟件發佈流程


appStore上傳蘋果應用程序軟件發佈流程
看到這樣的時候,說明你證書安裝,配置文件都沒問題了

2,發佈應用時需要選擇iOS Device。

appStore上傳蘋果應用程序軟件發佈流程

    對於用較低版本xcode的兄弟,可能有一些額外操作。(這個圖片隨着xcode版本的更新,已經失效,意思就是新版的XCODE界面與圖片不符,操作方式爲下圖,有個朋友用最新的版本就不需要做,當然如果跟着下面的做了也不會出錯)
appStore上傳蘋果應用程序軟件發佈流程



appStore上傳蘋果應用程序軟件發佈流程
    將內容改成Distribution

appStore上傳蘋果應用程序軟件發佈流程


appStore上傳蘋果應用程序軟件發佈流程

3.配置TARGETS裏面的Summary的Bundle  Identifier,
  TARGETS裏面的Build Settings的Code Signing Identity,
  PROJECT裏面的Build Settings的Code Signing Identity這三部分匹配,(在填寫開發者網站時的
Bundle  Id時也要匹配。具體怎麼算匹配在文章最下面已經補充,如果在出錯後可以看下,這裏的話還是按照順序一步一步做),然後進入Product菜單->Archive,然後會自動彈出Organizer,Archive包是用來上傳到AppStore的

之前說的證書匹配什麼的說的比較複雜,其實如果按步驟一步步來很簡單
appStore上傳蘋果應用程序軟件發佈流程
appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程



這裏選擇你創建的發佈證書就OK了
appStore上傳蘋果應用程序軟件發佈流程
appStore上傳蘋果應用程序軟件發佈流程
appStore上傳蘋果應用程序軟件發佈流程
Applications must be ready for upload on iTunes Connect before they can be validated or submitted from within Xcode. appStore上傳蘋果應用程序軟件發佈流程


4.如果看到的是上面的界面,那是正常的,因爲你還沒告訴蘋果公司你要上傳你的軟件,蘋果公司沒準備好接收你的軟件,那你接下來的是登陸開發者中心,打開
https://developer.apple.com/account/登陸IOS Dev Center的iTunes Connect,然後點擊Manage Your Applications,然後點擊Add New App  ,(第一次發佈的時候有一個界面選擇公司和語言,我是隨便寫的,好像沒什麼區別)然後開始配那些項,這個沒什麼難度,一看就懂,按照要求寫上去就行
appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程




10月17日補充,由於ios6的推出,蘋果在開發者網站上有了一些變動,在填寫信息的時候有個朋友糾結了3天也沒弄好,最後直接Q我,我就直接幫他做了。我就把如何填寫的信息完整的發出來吧appStore上傳蘋果應用程序軟件發佈流程
可能在這裏填寫的時候,要注意一下,如果之前appid如果不是用*,可能看不到以下界面,這個要去重新新建一個appid,然後更新發布證書,指向那個appid,如果你看到的是下面的界面,那麼就不需要新建了,然後在Bundle ID Suffix這一欄寫上你的應用程序名,這一欄非常重要,與你Xcode上的程序名要一致才能上傳
appStore上傳蘋果應用程序軟件發佈流程
appStore上傳蘋果應用程序軟件發佈流程

這個界面沒什麼要填的,就是選擇價格,一般都是免費軟件,收費的同學一般都有“管”級別的同學在弄,一般不會看這個,呵呵。選擇完就繼續。appStore上傳蘋果應用程序軟件發佈流程

這個部分填寫的時候沒什麼需要注意的地方,當然越準確越好,但是就上傳而言,不會有太過嚴肅的審覈,可能有時候要選擇primary category,一般都是business,其他視自己需要和實際情況。appStore上傳蘋果應用程序軟件發佈流程
這個部分一般全部選none就好,如果你的程序確實有涉及一些不健康的或者暴力的,那就需要仔細看看了

新增了一個內容,是鼓勵爲小孩開發軟件,如果軟件是針對小孩子設計的,就選上,在分類和搜索時會優先搜索到。
appStore上傳蘋果應用程序軟件發佈流程


appStore上傳蘋果應用程序軟件發佈流程

這個部分將會在軟件通過後顯示在appstore界面的正文部分,雖然在上傳的時候審覈的不強,但是還是要認真填寫,其他帶選擇性填寫的,如果有的話,最好還是填上去。appStore上傳蘋果應用程序軟件發佈流程

這個界面是ios6之後新加的,之前上傳的時候是沒有的,那些數據怎麼填寫的呢,郵箱就是你的登陸郵箱,名稱就是你填寫的用戶名,我的是appStore上傳蘋果應用程序軟件發佈流程

你也可以點擊Edit Profile查看你填寫的一些信息,你也可以看到appStore上傳蘋果應用程序軟件發佈流程

suntiezheng不是我的名字,哈,是我們老大的。
appStore上傳蘋果應用程序軟件發佈流程

接下來的,你要準備一個在蘋果商店顯示的圖標,當然是炫一點好,是用戶的第一印象,然後就是要有截圖,按照標準,點擊旁邊的問號查看有什麼要求,至少要一張截圖,如果你要兼容iphone 5  ,那也要iphone5的截圖。
(這裏點開上圖中問號,會看到蘋果要求你上傳什麼格式,大小的圖片,而不是隻能jpg,這個纔是最標準的要求)
5如果抖按照要求順利提交,你的郵箱會收到蘋果公司的一封郵件,告訴你現在是Prepare for Upload這個狀態,然後在點擊Ready to Upload Binary之後,狀態會變成Waiting For Upload,到現在就可以回到Xcode上傳軟件了,就是進入Product菜單->Archive,appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

appStore上傳蘋果應用程序軟件發佈流程

6.看到這個界面就可以鬆一口氣了,這是蘋果公司告訴你你可以上傳瞭然後點擊Finish,然後回到Organizer-Archives界面,選擇Distribution按鈕,會有如下界面

appStore上傳蘋果應用程序軟件發佈流程


然後點Next,然後繼續點,直到上傳
appStore上傳蘋果應用程序軟件發佈流程



到這個時候你要做的就是等待了,當上傳完成的時候你會收到郵件,通知你Waiting For Review。也就是大功告成。




可能第一次發佈的時候有各種困惑,
1:到底怎麼樣算配置好各種參數?其實很簡單,只要把證書設置爲專門發佈的證書即可,沒有網上說的那麼恐怖,之前我被誤導了
2.我在弄的時候有No  identities  are available for signing 的錯誤,並且在target的bilding setting裏面選不上證書,就是灰色的。最後的原因是:在創建app id時第二個項Bundle Identifier (App ID Suffix)沒有設置好
appStore上傳蘋果應用程序軟件發佈流程
3.一定要有一個發佈證書appStore上傳蘋果應用程序軟件發佈流程

有一個朋友出現這個問題,是發佈證書不能識別,對於這個問題,分三步解決,第一步,點擊那個Organizer界面最下面的Refresh,要是依然是黃色感嘆號,則第二步,右鍵刪除不能識別的證書,再到蘋果開發者網站下載那個發佈證書,如果這樣做後依然是黃色感嘆號,那第三步,再蘋果開發者網站移除掉那個發佈證書,重新來,移除後,打開鑰匙串,請求一個證書,然後提交,刷新一下界面然後重新下載,安裝。如果還有問題,那就操作步驟有問題了。每一個步驟都不能錯,這就是蘋果的變態處


4.可能有各種問題

  • You must provide a last name.
  • You must upload at least one screenshot.
  • You must provide an email address in a valid format (for example, [email protected]).
  • You must provide a phone number in a valid format (for example, +1 123 456 7890).
  • You must upload a large app icon.
  • You must select a primary category for your app.
  • App Description must be at least 10 characters in length.
  • You must provide a first name.

  • appStore上傳蘋果應用程序軟件發佈流程
  • 對於這個問題是,是在填寫Last Name時沒有與你帳號的用戶名相對應的結果

    appStore上傳蘋果應用程序軟件發佈流程
  • 這個問題是因爲你的appid與appStore上傳蘋果應用程序軟件發佈流程

    不對應。假如你設置的appid是com.csc.*,那麼你的Bundle Identifier應該是com.csc.calinks。calinks是我的項目名,是灰色的,無需自己修改,自己修改的只是前兩個字段。類似的問題也有你在蘋果開發者網站上填寫Bundle ID Suffix與你的項目名不同造成的。
  • appStore上傳蘋果應用程序軟件發佈流程

    這個也有可能你選擇的發佈證書與這兩者不對應,創建發佈證書在選擇appid時一定要看清了。這個就是前面說的3者要相對應。簡單的說就是最好按照步驟一步步來。

5.有個朋友問我,“我準備了這些圖片,該如何使用呢”appStore上傳蘋果應用程序軟件發佈流程

可能這個朋友同時看多個文檔,但我之前沒有明確提出來在哪個地方傳這些圖片,可能那個朋友就迷惑了,其實我有提到的,紅色的第5點的上面,用括號補充出來了

6.有個朋友問:“那個所謂的把程序打包啥的是不是那個什麼操作Archive的過程?”這個問題,說的很對,我自己是這麼認識的。根本就不存在打包的概念,不象安桌生成一個APK,拿到手機上面就直接裝,當然越獄的是可以。如果你把你的程序用itunes生成一個ipa出來,我覺得這個過程才叫打包。而網上有些朋友說的打包,應該就是提交過程,所以根本不需要理會打包什麼

7.有個朋友問“在itunes connect上面,我想上傳一個免費的應用程序,我難道只需要操作appStore上傳蘋果應用程序軟件發佈流程

這個嗎?不需要額外的提交什麼合約之類的東東,嗎?”

這個問題,是沒必要擔心的,因爲在申請開發者帳號的,它所要求的信息基本都已經錄入了,99美元你也付了,你有權利上傳你的程序,無需其他任何額外要求。當然通不通的過,那是審覈階段的事情了。審覈標準網上也有。

8.有朋友問,appid是不是一定要按照那個格式?蘋果公司推薦使用完整的APPID作爲你發佈的軟件的appid,不用使用帶有*的通配符,每一個軟件發佈都對應一個唯一的appid,因爲如果你沒用完整的appid,假如後續需要升級要用到完整的,而如果相同的appid被佔用,那麼你得重新上傳

9.最近有朋友遇到了不能安裝證書的問題,而且不止一個人,其實是因爲蘋果界面的變動,有一個是用於管理上傳到app store的版本,有一個是用於創建開發者的證書。要看清選項

10.有人問可以不可以用ipa直接發佈軟件到APPStore?這個是可以的,但最好還是先弄清楚正常的流程之後再弄ipa上傳。ipa上傳也是很有意義的事情,特別在大公司分工合作中,產品不歸開發人員管理。上傳的人可能不能看到代碼。

11.企業賬號的問題?如果用企業賬號,是可以直接裝到用戶的手機,無需經過蘋果的APPStore下載。確實挺方便。網上說適合500人以上的大公司,我感覺不是,無論大小公司,如果想讓客戶體驗到最新的軟件,那麼企業帳號絕對物超所值。而且無需知道安裝者的設備號,無需越獄,所有的手機都可以裝。如何申請企業帳號以及企業帳號發佈APP流程,推薦幾個文章:

申請蘋果開發者企業賬號I

iOS 企業證書發佈app 流程

有一個朋友說在弄的時候所有的步驟都沒有問題,但是在手機裏面打開鏈接遇到“無法到達”的情況。itms- services:///?action=download-manifest&url=http://www.XXX.com /mytest.ipa,原因是服務器不識別那兩個文件類型,.plist和.ipa,後臺服務器需要添加文件對這兩種類型的支持。在mime裏面添加。

我一 同學寫的-ios企業開發者帳號使用

12.如何爲AppID續費?續費流程鏈接

13.企業賬號的神祕面紗,任何未越獄手機在wifi模式下都能安裝。用iphone手機QQ或者其它軟件掃描如下圖片,別用微信,微信不支持itms-services協議,點擊安裝搶先版

或者直接用safari打開

itms-services://?action=download-manifest&url=http://www.calinks.com.cn/buick/dx/Buickhousekeeper.plist


不過我覺得企業賬號很廢。299美元沒必要,如果有一些特殊情況,軟件更新太頻繁,又不想通過蘋果的審覈,或者軟件必須用到私有接口卻要給未越獄用戶安裝,或者你的大多數用戶都不是通過AppStore下載,根據你的情況,那麼你可以考慮下299美元的賬號。一般情況下,還是用99美元的好。

問:這種模式下載,是不是一定要在appstore有才行?答,不是。只要有299賬號,不需要在App Store上線,也上不了。

14.有人問,不管是開發,還是發佈,appid都是同一個對不對?這個問題顯然不是,開發的appid和發佈的appid沒有要求一定要同一個,你可以開發的時候是一個appid,發佈的時候另外一個,完全沒任何關聯。推送證書跟開發證書和發佈證書也沒有半毛錢的關係,唯一共同點是他們都是鑰匙串裏面。發佈軟件不需要推送證書也能發佈,如果你要加上推送功能,那麼才需要推送證書。不要被上面所有的要一致而迷惑,上面是指發佈這一個操作內的所有的appid,證書要一致。而開發而發佈是兩個不同的動作。就像擡手與放腳是兩個不同動作,類似於手指跟腳趾的關係。沒有任何關係,有關係的是手臂與手指,腿與腳的內部關係。

15.提交時提示錯誤This Bundle is invalid.New apps and app updates submitted to the App Store must be built with public。原因在於你用的xcode版本或者sdk的版本低,先確認你的版本是否爲最新版或者是較新版。這個問題是因爲從2014年2月1日開始所有新提交的app和更新,都要用xcode5和IOS7。用xcode4.6是不行的。這個過一段時間蘋果就會將提交應用的版本提高,所以最好的辦法就是保持xcode最新。

16.提示The session's status is Failed and the error description is failed to open ssh session

如果出現很多這樣的錯誤,原因在於你所在的網絡,譬如大學學校的網絡,房東的網絡,或者公司網絡限制了上傳跟下載。這種問題的解決辦法你可以先試着重傳,試個5遍還是這樣的錯誤,那就考慮換個網絡環境,或者找網管解除限制。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章