iPhone開發(fā)入門:在App Store上發(fā)布程序
準(zhǔn)備工作
向AppStore注冊自己的程序之前,需要準(zhǔn)備以下的東西。
57×57像素的ICON
512×512像素的ICON(JPEG或TIFF格式)
屏幕截圖
制作ICON
這里的兩個圖標(biāo)分別是設(shè)備上表示這個應(yīng)用程序的圖標(biāo)(57×57)和在iTunes的AppStore上表示的圖標(biāo)(512×512)。比如下面這兩個圖標(biāo)。

需要注意的是,小的圖標(biāo)(57x57)可以是PNG格式的,而在AppStore上用的大的圖標(biāo)(512x512)必須是JPEG或者TIFF的格式。其中小的圖標(biāo)在編譯程序的時候作為程序資源已經(jīng)包含到程序文件中了,而大的圖標(biāo)需要通過別的方式登錄到AppStore上。
設(shè)置程序中使用的ICON
首先來設(shè)置程序中使用的小圖標(biāo)。這里圖標(biāo)文件的名稱為「Icon.png」。打開程序的Xcode項目后,拖動該圖標(biāo)文件到左邊的「Resources」目錄。

在彈出的對話框中,選擇上面的「拷貝到目的組文件夾(必要的情況下)」,并確認(rèn)下面的「添加到目標(biāo)」被選上了。點擊添加。

圖標(biāo)添加到工程中后,需要設(shè)定其為應(yīng)用程序的ICON。點擊Resources文件夾下的「Info.plist」,在「Iconfile」表中輸入圖標(biāo)名稱「Icon.png」。

這樣,就完成了程序中圖標(biāo)的設(shè)置,編譯以后就可以顯示出來啦。
抓屏
屏幕截圖可以通過Xcode的organizer來抓取。設(shè)備連接下的情況,從organizer選擇「Screenshot」標(biāo)簽。

點擊右下角的「Capture」,就會自動截取連接中設(shè)備的屏幕。所以在應(yīng)用程序啟動的時候點擊這個按鈕就可以了。抓取后可以將圖片拖動到適當(dāng)?shù)牡胤奖4?。格式選擇JPEG。

給程序起名
給程序起個好名字是很重要的。改名字會被顯示在主畫面的程序圖標(biāo)下面。名字不要太長,否則會被省略掉。語言是英語還是漢語沒有關(guān)系。

更改名字
缺省狀態(tài)下程序的名稱與項目的名稱一致。需要更改的時候,編輯剛才設(shè)置圖標(biāo)時的Info.plist,其中的「Bundledisplayname」就是應(yīng)用程序的名稱。

其他的設(shè)定
再來看看Info.plist中還能設(shè)置什么信息。
根據(jù)程序的界面語言選擇那種語言的AppStore,使用「Localizationnativedevelopmentregion」。這里選擇「Japan」。
為了區(qū)分不同組織,作者開發(fā)的應(yīng)用程序,使用「Bundleidentifier」中的「com.yourcompany」,選取不同的KeyWord。盡量選擇與自己獨特的內(nèi)容。
「Bundleversion」中設(shè)置程序的版本信息,比如最初發(fā)表的時候是「1.0」。

創(chuàng)建distributionbuild
發(fā)布在AppStore的程序與之前開發(fā)中在iPhone或者模擬器中測試的程序是不同的。需要用叫做distributionbuild的方式來編譯。與之前的編譯方式相同的是也需要創(chuàng)建Provisioning。
創(chuàng)建Provisioning
與上一回創(chuàng)建Provisioning的方式一樣,由iPhoneDevCenter跳到ProgramPortal頁面,按下面的順序來設(shè)置。
注冊證明書
選擇左邊的「Certificates」,雙擊「Distribution」。

與上一回注冊設(shè)備的證明書一樣的順序,選擇文件后注冊。結(jié)束之后下載證明書。
創(chuàng)建ProvisioningProfile
與上一回介紹的一樣,選擇左邊的「Provisioning」后,雙擊「Distribution」?!窪istributionMethod」設(shè)置為「AppStore」,然后輸入上一回設(shè)置的內(nèi)容,點擊Submit,下載安裝創(chuàng)建好的ProvisioningProfile。

項目設(shè)定
為了創(chuàng)建distributionbuild,需要向工程中添加新的編譯目標(biāo)。由Xcode的菜單點擊「項目」→「項目設(shè)定」中的「構(gòu)成」標(biāo)簽。

選擇表中的「Release」,并點擊在下的「複製」,生成「Release的拷貝」后,將其名稱改為「Distribution」。結(jié)束后點擊「編譯」標(biāo)簽,選擇「Distribution」。

***,需要在「AnyiPhoneOSDevice」項目上選擇剛才安裝的ProvisioningProfile。
編譯
返回Xcode的主窗口,Active的SDK選擇「Device」,Active的構(gòu)成選擇「Distribution」。因為用distributionbuild編譯的文件不能直接在設(shè)備上使用,所以我們不能選擇「編譯并執(zhí)行」,而是只是點擊Xcode的「編譯」菜單下的「編譯」按鈕。

編譯介紹以后,在項目目錄下的「build」文件夾下會生成「Distribution-iphoneos」目錄。后綴名為app的文件就是編譯好的程序文件。在文件上點擊右鍵,選擇「壓縮為"(項目名).app"」。

之后,就會在相同目錄下生成后綴名為zip的壓縮文件。
發(fā)布程序到AppStore
為了將應(yīng)用程序發(fā)布到AppStore上,需要使用iTunesConnect。
連接iTunesConnect
選擇ProgramPortal中的「Distribution」→「AppStore」標(biāo)簽。點擊AppStore項目中的「LearnMore」,然后點擊其中的「GotoiTunesConnect」連接。

發(fā)布程序

在下右邊的「ManageYourApplication」。在接下來的畫面上點擊「AddNewApplication」。
如果是***次發(fā)布自己的程序,需要設(shè)置程序的語言和開發(fā)者的名稱。開發(fā)者的名稱是指用iTunesConnect連接AppStore的時候,在右上角表示的名字,這個名字可以是公司的名稱,卡發(fā)團隊的名稱,或者是你所開發(fā)程序的***的品牌。這兩個設(shè)置以后不能更改的,所以需要慎重。接下來的畫面確認(rèn)你的程序是否需要加密,一般選擇「No」。在接下來的畫面「Overview」中輸入程序的其他信息,加粗的字體是必須的項目。
ApplicationName-程序名稱
ApplicationDescription-程序說明
Device-對應(yīng)設(shè)備。選擇對應(yīng)的設(shè)備
PrimaryCategory-程序的分類
Copyright-著作權(quán),開發(fā)者的名字等信息
VersionNumber-在AppStore上表示的程序版本。一般與程序中設(shè)置的版本一致
SKUNumber-產(chǎn)品號碼。如果你開發(fā)了多個程序,不要與其他程序重復(fù)
SupportURL-在AppStore上表示的技術(shù)支持的地址鏈接
SupportEmailAddress-郵箱地址
在接下來的畫面「Upload」中上傳事先準(zhǔn)備好的文件。
Application-編譯好的應(yīng)用程序文件(壓縮文件,后綴名為zip的那個)
Large512x512Icon-512×512像素的圖標(biāo)文件
PrimaryScreenshot-屏幕截圖文件
選擇好后,點擊下一步。
在接下來的「Pricing」畫面,設(shè)置程序的發(fā)布日期,以及發(fā)布的國家。
AvailabilityDate-應(yīng)用程序的發(fā)布日期。如果不知道,缺省為上傳的日期
PriceTier-應(yīng)用程序的價格。如果是免費的選擇「Free」
這里,設(shè)定發(fā)布日期的時候需要留意一件事情。因為上傳的程序?qū)嶓w不能立刻發(fā)布到AppStore上,需要內(nèi)部檢測人員的評審,只有通過的才能真正地上傳到AppStore上。這個評審的時間大概是2個星期左右。而上傳的信息等會根據(jù)你設(shè)定的發(fā)布日期來顯示。所以,如果你設(shè)置發(fā)布日期為上傳的日期,那么廣告打出去了(AppStore上的首頁中顯示),而實際的程序卻不能下載。到了真正能下載的時候,你的廣告已經(jīng)落的老后了,減少了被點擊的幾率。所以一般設(shè)置發(fā)布的日期都比上傳的日期晚上2/3周為宜。
接下來,在「Localization」頁面中可以設(shè)置一些缺省語言意外的程序說明。
所有都設(shè)置完畢后,***在「Review」頁面中確認(rèn),如果沒問題就上傳吧。之后,會返回到「ManageYourApplication」頁面,你可以確認(rèn)程序是否被添加到列表中。如果Status是「InReview」代表你的程序正在被審查,審查結(jié)束后等待發(fā)賣的時候狀態(tài)會變?yōu)椤窻eadyforSale」,到了前面設(shè)定的發(fā)布日期,會自動地發(fā)布出去。
如果Status是「PendingContract」表示申請iPhoneDeveloperProgram中的帳號手續(xù)時存在問題,如果該狀態(tài)一直持續(xù)著,你可以聯(lián)系A(chǔ)DC,詢問具體原因。
iPhone開發(fā)的專家
到此為止iPhone開發(fā)入門系列已經(jīng)接近尾聲了。如果想要成為iPhone開發(fā)領(lǐng)域的專家那么還需要很長的路來走。不過我們已經(jīng)學(xué)會了最起碼的環(huán)境搭建,簡單地程序開發(fā),以及Objective-C語言的基礎(chǔ)。對于iPhone上的一個好程序(賺錢的程序)來說,有時并不需要你有多高的程序開發(fā)基礎(chǔ),就像***回我提到的那樣,重要的是要有好的創(chuàng)意。
接下來我還會更加深入地介紹iPhone開發(fā)過程中的技巧,知識等。希望得到您的關(guān)注。