xcode打包測試


模擬器的內存cpu網絡,都是電腦的。xcode可以查看。

Xcode7之前是限制人,限制電腦,限制app,限制真機調試的。
Xcode7之后,做真機測試只需要apple id即可,會自動生成證書。

Xcode7之前限制人:
1.必須擁有apple id(免費的)
2.加入開發者計划,升級為開發者賬號
3.開發者賬號分類:個人賬號688(可以真機測試,打包測試,程序發布,1-3天),公司賬號688(可以真機測試,打包測試,程序發布,需要鄧白氏認證,30天左右),企業賬號1688(可以真機測試,打包測試,企業內部安裝,需要鄧白氏認證,30天左右,不能發布到appstore)


Xcode7之前:
1.限制人:申請appid,如圖。得到開發者賬號。

2.限制電腦:使用需要真機調試的電腦生成CSR文件(證書簽名請求文件,每台電腦不一樣,可以識別不一樣的電腦),用申請的開發者賬號登錄,點擊Certificates,Identifiers & Profiles,

Certificates:限制電腦的。Identifiers:限制app的。Devices:限制真機手機的。Provisioning Profiles:根據前面3項生成一個描述文件,用於調試時驗證。

Development:開發時的證書。Production:發布時的證書。

.certSigningRequest就是CSR文件。

通過CSR文件文件生成一個.cer文件,這樣限制電腦就完成了(cer文件是跟電腦相關的)。

3.限制APP:通過app的BundleID(Bundle Identifier)(app的唯一標示)限制app。點擊Identifiers->App IDs,點擊加號,Explicit App ID(明確的id),Wildcard App ID(模糊的id,通過通配符,*),App Services(當前app可以有哪些服務)。

4.限制真機手機:每一個蘋果真機都有UDID,設備的識別碼。點擊Devices---All---加號(Xcode可以查看真機的Identifier),Register Device填入真機的UDID(Identifier).

5.根據前面三項生成一個描述文件(.mobileprovision)(在本地驗證各項是否正確),如圖。


以上生成的.cer和.mobileprovision文件有用。.cer文件拖到"鑰匙串訪問---登錄---證書"里面去。雙擊.mobileprovision安裝,這個文件安裝的位置(前往---資源庫---MobileDevice)



真機調試:Build Setting----Code Signing----Provisioning Profile(描述文件),Code Signing Identity(cer文件),General---Identity----Team選為none。      (.p12是cer文件的復印件,.p12文件和描述文件.mobileprovision也可以進行真機調試,描述文件拷貝是可以用的,但是證書cer文件拷貝也用不了,cer文件是跟電腦相關的)。




Xcode7之后的真機調試:Xcode偏好設置---賬號---add apple id(免費的賬號,登陸后需要加入開發者賬號,join the Apple Developer Program)---直接運行,會自動生成描述文件和證書,手機設置---通用---設備管理---信任一個賬號。
常見問題,如資料。





打包測試:將項目打包成.ipa的壓縮包,供指定設備安裝測試,給客戶展示和測試人員測試,就是打包測試。
打包測試:限制人(買個賬號),限制電腦,限制app,限制真機,生成描述文件,安裝證書和描述文件,打包成ipa包,安裝測試。

登陸開發者賬號,點擊Certificates,Identifiers & Profiles,左邊限制電腦,限制app,限制真機。
1.點擊限制電腦的Certificates,點擊加號,打包測試算是Production---App Store and Ad Hoc----繼續---創建CSR文件(搜索KEYchain-鑰匙串訪問-證書助理-從證書頒發機構請求證書-存儲到磁盤)---繼續---上傳剛才生產的csr文件---生成下載cer文件到本地。
2.點擊限制appid---App IDs---加號---描述隨便寫---選擇精確模糊的id---繼續。
3.限制設備,Devices---All---加號---UDID(Xcode-window-devices).
4.描述文件,Provisioning Profiles---All---Distribution---Ad Hoc---選擇所有真機設備---下載描述文件。
5.雙擊安裝cer文件和描述文件。(cer文件安裝在鑰匙串里面,描述文件安裝在資源庫-MobileDevice里面)
6.創建一個項目,修改Bunldle Identifier為剛才的id和Build Setting--code sign,修改Provisioning Profile和Code Signing Identity,修改Team為none.
7.Xcode修改真機為Generic IOS Device--product---archieve---Export---save for  Ad Hoc Deployment----輸入賬號----報錯(鑰匙串-系統-顯示-過期的證書-重新上網下載證書WWDR Certificate (Expiring 02/07/23)---把下載的證書拖過去---下一步(ipa就是zip)---Xcode-window-Devices-ipa直接拖到手機去)。





程序發布:appstore或者指定區域。限制人電腦(發布證書)app,沒有限制真機設備。
在開發中心創建app record。開發者賬號登陸---iTunes Conect--我的app。

 

http://blog.csdn.net/cyuyanenen/article/details/51925005

一、概述 
(1)iOS開發中,應用程序打包 = ipa = 安裝在手機上。(注意,並不是所有的ipa都可以隨意安裝) 
(2)如果想讓用戶可以安裝ipa,必須在打包程序的時候說清楚 哪一個應用程序可以安裝到哪一台設備上。 
(3)一般要想打包(測試或發布),必須成為蘋果開發者。 
(4)下面的打包環境:Xcode 7.3.1、iOS 9.3.2。

二、打包(生成ipa測試包)步驟 
第1步:配置發布證書和AdHoc描述文件 
(1)登陸蘋果開發者主頁 https://developer.apple.com,選擇Account,然后選擇 Certificates, Identifiers & Profiles,點擊Certificates: 
這里寫圖片描述

(2)點擊右上角的加號: 
這里寫圖片描述

(3)然后 continue,再選擇 App Store and Ad Hoc: 
這里寫圖片描述

(4)之后,一路 continue,直到需要我們上傳 CSR 文件: 
這里寫圖片描述

(5)創建CSR,即證書請求文件。首先,在鑰匙串訪問中,如下圖從證書頒發機構請求證書: 
這里寫圖片描述

(6)然后,將CSR文件存儲到磁盤,其中的用戶電子郵件可以隨便寫,也可以寫你的真實郵箱,其余兩項也無特殊要求,可不寫。 
這里寫圖片描述

(7)最后,將CSR文件上傳到蘋果服務器。此時蘋果服務器會自動生成,簽名后的CER文件(ios_distribution.cer),然后 Download 到本地磁盤,並雙擊該CER文件,即可完成安裝。 安裝之后,可到 鑰匙串訪問->登錄->證書 中查看該證書是否有效。

(8)AppID = Bundld ID 用來在App Store上全球唯一標識每一個應用程序的。注冊AppID, 告訴蘋果哪一個APP需要調試。 
這里寫圖片描述

(9)點擊Identifiers ->點擊加號 
這里寫圖片描述

(10)其中的 App ID Description 可以隨便寫 
這里寫圖片描述

(11)在 App ID Suffix 中,有兩個選項可以填寫bundle ID,如下圖: 
這里寫圖片描述 
<1> Explicit App ID:填寫一個精確的ID,如果需要做遠程推送/游戲中心/內購等功能,必須填寫准確的bundle ID。 
<2> Wildcard App ID:填寫一個模糊的ID,,如果不需要做遠程推送/游戲中心/內購等功能,直接填寫模糊的bundle ID即可,這樣可以提升我們的開發效率, 
所以在開發中,為了保證方便,使用AppID時,可以使用通配符*,替代所有的應用程序。 
<3> 之后,一直 continue 即可。

(12)點擊Devices,告訴蘋果哪一台設備可以進行真機調試 
這里寫圖片描述

(13)點擊右上角的加號: 
這里寫圖片描述

(14)在Xcode中,點擊window->Devices,獲取設備的UDID 
這里寫圖片描述

(15)填寫設備的描述和設備的UDID注冊設備 
<1> 使用設備的唯一標示符號制定,哪些真機能夠調試開發。 
<2> 普通的開發者賬號,一個賬號只能注冊100台設備,蘋果並沒有提供刪除設備ID的功能,僅僅只能禁止某台設備調試(禁用后,名額仍然會被占用),被禁止的設備會在下一次付費時被清空(第二年),從而釋放名額。 
<3> 每一個設備的唯一標示符號,能夠唯一准確的定位到一台設備,只能在”添加設備時”使用。 
<4> 如果程序中使用了唯一標示符號,將無法上架。

(16)描述文件(Profiles),即告訴系統哪一台電腦的哪一個應用程序可以在哪一台設備上運行。 點擊Provisioning Profiles : 
這里寫圖片描述

(17)點擊加號 
這里寫圖片描述

(18)然后按照提示一步一步往下走,選擇對應的證書、AppID、Devices,告訴系統哪一台電腦/哪一個APP/哪一個設備可以調試。 
注意,選擇對應的證書時,選擇的是:Ad Hoc 
這里寫圖片描述

(19)最終得到 xxxxxx.mobileprovision文件,下載到本地磁盤,雙擊,保存到Xcode 中。

(20)注意點 
<1> 檢查證書的狀態,可到 鑰匙串訪問->登錄->證書 中查看該證書是否有效。若無效,則可能現象為“ WWDCRA 無效 或 此證書的簽發者無效”,解決方案可以參考如下文章: iOS 探討之 WWDCRA 無效 or “此證書的簽發者無效” 
<2> 生成AdHoc描述文件的時候要注意勾選所有的設備,只有被描述文件包含的設備才能進行相應的測試。如果是企業賬號的話則不需要添加設備的UDID。 
<3> 打包ipa時的CER證書,名字為:ios_distribution.cer; 
真機調試時的CER證書,名字為:ios_development.cer;

知識點補充: 
在蘋果開發者主頁中配置好需要的證書之后,也可以不用“下載到本地,然后再安裝“,還有另一種解決方案,如下: 
(1)Xcode->Preferences 
這里寫圖片描述

(2)選擇 Accounts,然后點擊加號,然后選擇“Add Apple ID“ 
這里寫圖片描述

(3)輸入剛剛在蘋果開發者主頁中使用的 Apple ID,然后點擊 Sign In。 
這里寫圖片描述

(4)登錄成功后,點擊右下角的 View Details,如下: 
這里寫圖片描述

(5)點擊后,會有兩項顯示: 
<1> Signing Identities,即簽名證書 
這里寫圖片描述 
<2> Provisioning Profiles,即描述文件 
這里寫圖片描述

在最下方,有一個 Download All 按鈕,點擊后,再點擊 Done。即可將對應的證書和描述文件自動安裝到對應的位置。 
這里寫圖片描述

第2步:配置Xcode(即在Xcode中,設置有效的Archive配置) 
此處方法眾多,本人都親自嘗試過,先打包成ipa,再成功安裝到手機上。 
方法1:(前提是已經用開發者帳號,注冊過相應的證書) 
(1)Xcode->Preferences->Accounts,登錄你注冊過相應證書的 Apple ID 帳號。

(2)運行環境選擇真機,此時項目工程下方中的 Products 中是全紅的,如下: 
這里寫圖片描述

(3)Command+B,然后顯示如下: 
這里寫圖片描述

(4)右鍵選中第一項,選擇“Show in Finder“ 
這里寫圖片描述

(5)顯示如下 
這里寫圖片描述

(6)打開你的iTunes,然后選擇“應用“,並直接將該app文件拖到iTunes中即可。 
這里寫圖片描述 
怎樣驗證此時該文件是ipa形式呢?如下圖: 
這里寫圖片描述 
結果顯示為: 
這里寫圖片描述 
說明我們的確得到了ipa文件。

備注:此處對(6)做個補充,即還有另一種方法得到ipa文件。 
將(5)中得到的app文件,拷貝到一個新建文件夾中,該文件夾命名為“Payload“,然后右鍵選擇“壓縮Payload“,如下圖: 
這里寫圖片描述 
我們將得到一個Payload.zip文件,將該文件重命名為Payload.ipa即可我們想要的ipa文件,然后將該ipa文件拖入到iTunes中即可(或直接雙擊該ipa文件)。

(7)然后,如下圖,點擊安裝即可將該打包應用安裝到手機上。 
這里寫圖片描述

方法2:(前提是已經用開發者帳號,注冊過相應的證書) 
(1)Xcode->Preferences->Accounts,登錄你注冊過相應證書的 Apple ID 帳號。

(2)運行環境選擇真機,此時項目工程下方中的 Products 中是全紅的,如下: 
這里寫圖片描述

(3)Xcode->Product->Archive,此時會直接跳轉到“Xcode->Window->Organizer“界面,如下: 
這里寫圖片描述

(4)點擊 Export,並依次按下圖順序選擇: 
這里寫圖片描述

這里寫圖片描述

這里寫圖片描述

這里寫圖片描述

這里寫圖片描述

(5)最終得到ipa文件,如下圖: 
這里寫圖片描述

(6)直接雙擊該ipa文件,並在iTunes中將該應用安裝到手機上即可。

方法3:(前提是已經用開發者帳號,注冊過相應的證書) 
(1)方法1和2中,Xcode可能已經默默幫我們做了很多配置,現在我們針對“要打包ipa測試包的任務“明確的做一些特定的配置。 
(2)點擊 Product->Scheme->Edit Scheme,或者通過如下快捷方式: 
這里寫圖片描述

進入到如下界面,並點擊Archive,確保Build Configuration 為 Release,如下: 
這里寫圖片描述

(3)經過親測,TARGETS->Identity->Team 可以不用選擇注冊相應證書時對應的 Apple ID 帳號,而且選擇別的對應/非對應帳號也都沒問題。(可能Xcode已經默默的幫我們選擇了,所以,此步操作可做/可不做) 
這里寫圖片描述

(4)選擇 TARGETS->Build Setting->Code Signing,如下: 
這里寫圖片描述

(5)找到 Code Signing Identity 中的 MiGuRead_2AdHoc,點擊 Don't Code Sign,選擇之前配置好的證書,因為是打包,此處應選擇:iPhone Distribution: xxxxxx,其中Debug 和 Release里暫時不要改動。 
這里寫圖片描述

(6)其中下方的 Provisioning Profile 可以使用默認的 Automatic,也可以指定對應的描述文件。(一般我們使用Automatic) 
這里寫圖片描述

(7)執行方法2中的步驟(3)~(7)。

特別說明:此處步驟(5)中,網上有很多種設置方法; 
(1)有的將Debug、Release 和 Provisioning Profile 都設置為了對應的證書; 
(2)有的將上述打包ipa測試包的證書設置為了“iPhone Developer: xxxxxx“開發證書,但也打包成功了,但這其實是不匹配的,Xcode可能已經默默幫我們更正了。 
(3)有的添加了AdHoc,這僅僅是為了區分,方便管理 
<1> 先通過PROJECT->Info->Configurations,點擊加號,並選擇 Duplicate “Release” Configuration(這里一定要選擇復制“Release”,因為打包/發布版本一定是release的) 
這里寫圖片描述 
添加后,如下: 
這里寫圖片描述

<2> 重命名(即命名可以自定義),一般證書和描述文件取名時默認用項目名稱+對應的功能縮寫。(有時也直接命名為AdHoc)重命名后,如下: 
這里寫圖片描述

<3> 選擇 TARGETS->Build Setting->Code Signing,如下: 
這里寫圖片描述

<4> 找到 Code Signing Identity 中的 MiGuRead_2AdHoc,點擊 Don’t Code Sign,選擇之前配置好的證書,因為是打包,此處應選擇:iPhone Distribution: xxxxxx,其中Debug 和 Release里暫時不要改動。 
這里寫圖片描述

<5> 選好之后,顯示如下: 
這里寫圖片描述

<6> 同樣,其中的 Provisioning Profile 可以使用默認的 Automatic,也可以指定對應的描述文件。(一般我們使用Automatic)

<7> 執行方法2中的步驟(3)~(7)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM