我試圖用Testflight到IPA上傳到我的應用程序的測試,但它與下面的錯誤而失敗:我的iOS應用程序標識符應與我的配置文件配合使用?
Invalid IPA: The keychain-access-group in in the embedded.mobileprovision and your binary don't match.
我很困惑,因爲我覺得我的設置是非常標準的,我有另一我可以構建和分發的應用程序很好(注意:有第二個開發人員帳戶,但在Xcode的同一實例中)。
這裏是我的設置:
我在Provisioning戶創建- 我的應用程序ID爲
com.bubblefoundry.Clear
。當然,它的前綴是Apple分配的數字標識符。 - 我使用應用程序ID和所需的設備創建了特別的分發配置文件。我將它下載到Xcode中。
- Xcode中的產品名稱是
Clear
。 - 目標「摘要」選項卡下的軟件包名稱爲
com.bubblefoundry.Clear
,其中Clear由淺灰色表示並由Xcode自動填充。雖然我可以在Clear
之前或之後添加文本,但我無法刪除它。 「信息」標籤下的名稱是com.bubblefoundry.${PRODUCT_NAME:rfc1034identifier}
。 - 在項目和目標的代碼簽名構建設置中,「調試」和「發佈」均設置爲「自動配置文件選擇器」下的iPhone Developer。我想我可能需要將發佈設置爲我的發佈配置文件,但我沒有在其他工作項目中這樣做。
我可以存檔我的應用程序就好了。然後在組織者中,我可以告訴它將它分發給臨時開發人員,然後選擇使用之前創建的分發供應配置文件對其進行重新簽名。沒有錯誤報告。同樣,我可以連接我的iPhone,並在手機上運行應用程序,而不會出現任何問題。只有當我嘗試使用Testflight.app上傳IPA時,我被告知該文件無效。
因爲它提到embedded.mobileprovision
,我想我會戳進IPA並檢查文件。這裏的相關數據(減去唯一INFO):
<plist version="1.0">
<dict>
<key>AppIDName</key>
<string>Project Clear</string>
<key>ApplicationIdentifierPrefix</key>
<array>
<string>app-id</string>
</array>
<key>CreationDate</key>
<date>2013-01-11T17:44:51Z</date>
<key>DeveloperCertificates</key>
<array>
<data>
my-certificate
</data>
</array>
<key>Entitlements</key>
<dict>
<key>application-identifier</key>
<string>app-id.com.bubblefoundry.Clear</string>
<key>get-task-allow</key>
<false/>
<key>keychain-access-groups</key>
<array>
<string>app-id.*</string>
</array>
</dict>
<key>ExpirationDate</key>
<date>2013-10-07T17:44:51Z</date>
<key>Name</key>
<string>Project Clear Testers</string>
<key>ProvisionedDevices</key>
<array>
<string>device1</string>
<string>device2</string>
<string>device3</string>
<string>device4</string>
<string>device5</string>
</array>
<key>TeamIdentifier</key>
<array>
<string>app-id</string>
</array>
<key>TeamName</key>
<string>Bubble Foundry</string>
<key>TimeToLive</key>
<integer>269</integer>
<key>UUID</key>
<string>uuid</string>
<key>Version</key>
<integer>1</integer>
</dict>
</plist>
見到這種情景,只是一切看起來什麼我先前設置一致。唯一的想法是,AppIDName
是Project Clear
,而不是Clear
。這是問題的根源嗎?或者,也許keychain-access-groups
應該是app-id.com.bubblefoundry.Clear
,而不是app-id.*
?
謝謝,但不幸的是,將bundle ID更改爲'com.bubblefoundry.Clear'沒有幫助。 – pr1001
至於我的供應配置文件,它不是通配符:它與應用程序ID「com.bubblefoundry.Clear」相關聯 – pr1001
請刪除鑰匙串證書和供應配置文件 - >再次添加 - >進行清理並生成 –