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

轉載地址:http://blog.sina.com.cn/s/blog_68661bd801019uzd.htmlhtml

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


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


(1)圖中加號是灰色,點擊圖中的加號,沒有反應,說明你的賬號不能發佈,找大家老大要賬號,正常狀況是加號是黑色,點擊會彈出一個建立證書界面。
 ios

(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, support@example.com).
  • 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上傳蘋果應用程序軟件發佈流程xcode

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

6.有個朋友問:「那個所謂的把程序打包啥的是否是那個什麼操做Archive的過程?」這個問題,說的很對,我本身是這麼認識的。根本就不存在打包的概 念,不象安桌生成一個APK,拿到手機上面就直接裝,固然越獄的是能夠。若是你把你的程序用itunes生成一個ipa出來,我以爲這個過程才叫打包。而 網上有些朋友說的打包,應該就是提交過程,因此根本不須要理會打包什麼微信

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

這個嗎?不須要額外的提交什麼合約之類的東東,嗎?」session

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

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

9.最近有朋友遇到了不能安裝證書的問題,並且不止一我的,實際上是由於蘋果界面的變更,有一個是用於管理上傳到app store的版本,有一個是用於建立開發者的證書。要看清選項iphone

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遍仍是這樣的錯誤,那就考慮換個網絡環境,或者找網管解除限制。

相關文章
相關標籤/搜索