iOS開發2-管理賬號,Bundle ID,真機調試
1.1 管理賬號
Xcode->preferences->Accounts管理項目用到的所有賬戶,包括用于管理代碼簽署的資產的Apple ID。通過添加一個Apple ID賬戶,選擇加入蘋果開發者計劃(Apple Developer Program),并將項目分配給一個團隊,你提供Xcode的憑證管理證書,標識符和概要文件。如果你沒有一個蘋果ID,您可以創建一個免費的。然而,如果你不加入蘋果開發者計劃,您的應用程序可以使用的功能是有限的。
Accounts管理界面
1.1.1關于蘋果開發者計劃(Apple Developer Program)
蘋果開發者計劃使個人和組織可以使用開發者賬號(Developer ID)在App Store發布App。包括分發Safari擴展。蘋果開發者企業計劃(Apple Developer Enterprise Program)是針對組織為員工開發和分發專有的內部應用程序。
蘋果開發者計劃提供一套完整的技術資源和支持,提供您創建創新應用程序需要的一切,Safari擴展,設備配件。注冊蘋果開發者計劃后,你可以訪問 Member Center和 iTunes Connect。如果你參加蘋果開發者企業計劃,可以允許您分發應用程序給員工但不能提到商店,只有訪問Member Center的權限,不能訪問iTunes Connect。
在注冊過程中,您選擇注冊個人或組織開發者。如果你注冊個人(individual) ,你就是一個一人團隊,你一個人可以執行所有開發指南中描述的任務,除了管理多個團隊成員。
注冊需要基本的個人信息,包括你的法律名稱和地址。如果你登記作為一個組織,需要提供更多的東西,比如你的法人名字和D-U-N-S號碼,作為驗證過程的一部分。當你的信息驗證通過,你檢查許可協議,在蘋果在線商店支付會員費,和接收激活你的會員的細節。
如果你登記作為一個 組織 ,你可以添加其他開發人員團隊和給他們特權來管理您的帳戶。每個團隊成員必須有一個單獨的蘋果驗證電子郵件地址的Apple ID 。你使用你的Apple ID登錄會員中心和iTunes Connect。團隊成員有不同的權限,根據角色查看可以不同的任務功能。
您可以使用一個Apple ID加入多個團隊。一個Apple ID可以關聯到多個蘋果開發者計劃賬戶。使用相同的Apple ID,您可以登記作為一個個體,加入其他團隊。
1.1.2在Xcode中添加你的Apple ID賬號
開始添加您的Apple ID在Xcode的Accounts偏好設置中。如果你想加入蘋果開發者計劃,直接從Xcode可以加入。 如果你不加入蘋果開發者計劃,你仍然可以在你的設備上運行你的應用程序,但您的應用程序可以使用的功能是有限的。你還可以輸入一個是iTunes Connect用戶的Apple ID來查看崩潰報告。可以添加多個Apple ID賬戶。
添加一個Apple ID賬戶步驟:
1. 選擇Xcode –> Preferences。
2.頂部的窗口中,點擊Accounts。
3.在左下角,點擊Add按鈕(+)。
4.從彈出菜單中選擇Add Apple ID。
Add Apple ID
5.在出現的對話框中,輸入您的Apple ID和密碼,并單擊登錄。
在OS X 10.11和以后,如果你啟用了兩步驗證Apple ID,您可能需要輸入額外的驗證碼。在早些時候操作系統上,您可能需要輸入一個app-specific密碼。
輸入您的Apple ID和密碼
6.如果你沒有一個Apple ID,點擊“創建蘋果ID”對話框的左下角。
創建您的Apple ID之后,再次執行這些步驟。
如果你不是蘋果開發者計劃的一員,你的個人團隊出現在團隊列表中平臺一列顯示“Free”。 如果你在蘋果開發者計劃中屬于一個團隊,團隊列表平臺一列顯示你的角色。 如果你是個人開發者,你的角色是代理。
刪除一個Apple ID賬戶
1.選擇Xcode –> Preferences。
2.頂部的窗口中,點擊Accounts。
3.在左列選擇您要刪除的Apple ID賬戶。
4.單擊左下角的刪除按鈕(-)。
2.2配置Xcode項目
2.2.1關于Bundle ID
bundle ID精確識別單個app。 bundle ID用于在開發過程中提供設備和在操作系統分發app給客戶。例如,在使用游戲中心和內購這些應用程序服務時使用 bundle ID來識別你的應用程序。偏好系統使用這個字符串來標識一個給定的應用程序優先適用。同樣,發射服務使用包ID定位應用程序打開一個特定文件的能力,使用它查找到的第一個應用程序的標識符。包ID還用于驗證應用程序的簽名。
bundle ID 必須是一個統一類型標識符(UTI)的字符串,只包含字母數字字符(a -z、a - z、0 - 9)、連字符(-)和點(.)。應該是反向dns格式的字符串。例如,如果您的組織的域名是Acme.com,你創建一個應用程序命名為Hello,你可以指定字符串com.Acme.Hello作為應用程序的bundle ID。
在開發過程中,你在很多不同的地方使用bundle ID來識別app。
bundleID的位置和使用
具體來說,bundleID的位置和使用如下:
·在Xcode項目,包ID存儲在信息屬性列表文件(Info.plist)。 這個文件是以后當你構建項目時復制到應用程序的包中。
·在iTunes Connect,您輸入 bundle ID來識別你的應用。在你第一個構建版本上傳到iTunes Connect之后,你不能改變你的bundle ID或刪除相關的明確 App ID 。
·在Member Center,您創建一個與應用程序的 bundle ID相匹配的AppID。如果App
ID是一個顯式的App ID,它完全匹配bundle ID。然而,與域名不同, bundle ID是區分大小寫的。 如果應用程序ID是小寫,你的包ID必須是小寫的。
·在iCloud,您所指定的容器id在Xcode項目是基于一個或多個應用程序的bundle ID。
2.2.2分配Xcode項目給一個團隊
每個Xcode項目與一個單獨團隊關聯。如果你注冊作為個人開發者,你被看做一個單人團隊。團隊賬戶用于存儲應用程序需要的證書,標識符,和描述文件。所有的應用程序在設備上運行和使用某些應用程序服務都需要代碼簽名。Xcode會在需要的時候為你創建這些資產,但是你現在設置團隊可以以后的避免警告對話框。
分配項目給一個團隊
1.在項目導航下選擇target。
2.點擊General。
3.在Team彈出框選擇你的團隊。
如果你是個人開發者,從彈出框選擇你的名字。
如果是組織,從彈出框選擇組織名字
選擇團隊
Xcode可能試圖創建一個團隊描述文件。如果你有一個設備連接到您的Mac或預先注冊一個設備Xcode會創建一個團隊描述文件。
4.如果一個團隊沒有出現在球隊彈出菜單,選擇“Add an Account” 。
2.3真機調試
所有iOS,tvOS,watchOS應用程序在設備上啟動需要代碼簽名。當你分配Xcode項目給一個團隊團隊或你第一次將功能添加到您的應用程,Xcode使用您提供的信息來為你創建一個團隊描述文件。例如,Xcode自動創建您的開發證書和注冊一個連接設備或者您的Mac。Xcode使用這些信息來創建一個最終安裝在設備上描述文件。如果設備在描述文件中,Xcode在這個設備上運行app。
2.3.1在設備上啟動你的App
如果你已經創建的代碼簽名身份和團隊描述文件,在您的設備上啟動應用程序只需要幾步。否則,在應用啟動時Xcode解決代碼簽名問題過程中可能會出現一系列的對話框和警告。
在設備上啟動app:
1.連接設備到你的Mac。
2.在項目導航欄,在 Scheme 工具菜單欄選擇你的設備。
Xcode假定你用選中的設備進行開發,并自動為你注冊。
選擇設備
如果你的設備在Scheme工具菜單欄不顯示,那是因為它不可用,在繼續下一步之前解決這個問題。將鼠標移到不可用設備下查看不可用原因。比如系統版本低于deployment target,升級設備系統版本,或者從Deployment Target下拉框選擇目標版本。然后在Scheme工具菜單欄選擇設備。
3.點擊Run按鈕。
在啟動app之前,Xcode先將app安裝到設備上。
4.如果出現提示詢問是否codesign可以用鑰匙串中的key簽名app,點擊“Always Allow”
當你開發app時,在你支持的所有支持的設備和操作系統上運行。由于模擬器中可以獲得不同的工具,所以在發布之前,在模擬器上使用Instruments和其他工具測試你的app。
2.3.2移除Scheme菜單中的設備
如果你想讓Xcode忽略你連接的設備(你不想讓Xcode添加設備到團隊描述文件),從Scheme菜單中移除它。
從Scheme菜單中移除設備:
1.連接設備到你的Mac。
2.在Xcode中,選擇Window -> Devices,選擇Devices下的設備。
3.在Devices窗口的左下角,點擊Action按鈕(添加按鈕右邊的齒輪圖標)。
移除設備
4.在彈出礦中取消選中“Show in Run Destinations Menu”。
在項目編輯頁面,設備從Scheme菜單中消失。
2.3.3從設備中移除App
當你在設備上啟動app后,Xcode會在設備上安裝app。然后你可以使用Xcode中的Device窗口從設備中移除app。
從設備中移除app步驟:
1.連接設備到Mac上
2.現在Window –>Device,在Device下選擇設備。
3.在Installed Apps模塊,從列表中選中app,點擊列表下面的刪除按鈕(-)。
移除App
4.在顯示對話框中點擊“Delete”。
2.3.4核驗你的步驟
了解更多關于Xcode如何規定你的應用程序,在Member Center檢查團隊描述文件。你可以驗證該設備或Mac是否注冊和添加到團隊描述文件。
檢查設備是否注冊:
1.在 Certificates, Identifiers & Profiles,選擇“Device”。
2.在Device下選擇“All”。
你注冊的設備應該已可用狀態出現在列表中。可用設備黑色顯示,不可用的灰色顯示。
檢查步驟
檢查你的設備是否添加到團隊描述文件中:
1.在 Certificates, Identifiers & Profiles,選擇“Provisioning Profiles”。
2.在Provisioning Profiles下選擇“All”。 顯示團隊描述文件。對于iOS應用程序,團隊描述文件以“iOS Team Provisioning Profile.”開頭。
注意:你可能會有多個團隊描述文件,取決于你添加的功能和app個數。
檢查描述文件
3.點擊團隊描述文件來查看詳情。
團隊描述文件包含一個App ID,iOS應用程序(Xcode iOS Wildcard App ID),Mac應用程序(Xcode Mac Wildcard App ID)。iOS描述文件見截圖
團隊描述文件
下面列出的App ID是描述文件中包含的開發證書和設備數量。這個值應該和你賬戶中所有的開發證書和設備的數量一致。如果你是個個人開發者,你應該只有一個開發證書。
來自:http://www.jianshu.com/p/0c5e856a2c88