2015-11-06 312 views
-1

現在我有一個很大的問題了。我在做iOS動態編譯的功能,我想用一個iOS項目,編譯幾個不同的ipa文件,使用Enterprise以便這些項目可以安裝到手機上,我使用xcodebuild命令。但我不知道如何動態生成.mobileprovision文件。我不希望每次都從Apple開發人員中心手動生成動態修改iOS項​​目.mobileprovision

+0

我只是想做海量統一模板APP,所以想想如何配置動態.mobileprovision文件,有沒有什麼好的選擇? – Magic

回答

0

.mobileprovision文件符合RFC 3852「加密消息語法(CMS)」。除了明文簽名標識,應用程序標識符,權利,允許的測試設備UDID以及其他相關元數據之外,這些文件在Apple,證書,身份和配置文件工具生成時由Apple進行加密簽名。由於只有Apple擁有保護這些文檔的加密密鑰,因此您將無法自行動態更改這些文件 - 您必須使用證書,身份和配置文件工具才能生成,請求,下載和安裝配置文件Apple生成。

另外,證書,身份和配置工具允許你定義什麼是所謂的通配符應用程序ID(例如:com.mycompany.apps.*),這將允許你使用一個供應配置文件與應用程序ID樹下的應用程序:

com.mycompany.apps.myfirstapp com.mycompany.apps.yetanotherapp

既會工作,而:

com.mycompany.someotherapp

WOU ld需要不同的配置文件。使用通配符應用程序ID還會限制您允許使用的基於權利的服務類型 - 特別是在通配符配置下不允許使用推送通知,Apple Pay,應用內購買和遊戲中心等內容。如果您的應用模板需要使用這些受限制的權利爲基礎的服務,通配符配置不是一個可行的解決方案,您將不得不退回到與證書,配置文件和身份工具交互。

+0

嗨布萊恩Musial,謝謝你的回答。我會照你說的去做,然後回覆我的結果。謝謝。 – Magic

+0

嗨布萊恩Musial,我已經這樣做。但是,當我定義通配符應用程序ID(例如:[com.mycompany.apps。*])時,出現問題,我無法創建內部分配供應(我有iOS開發企業計劃)。我可以'不要使用Ad-Hoc,因爲我不知道所有設備的uuid。我想創建內部,然後我可以存檔我的iOS項目。我想使用在iPhone上運行的ipa。我該怎麼做。我希望收到你的回覆,非常感謝。 – Magic

+0

我剛剛使用我的企業帳戶執行了相同的過程,並且能夠爲通配符appId生成內部供應配置文件,然後將產生的IPA部署到設備,這表明您在項目中或在設置中與AppIds不匹配證書,身份和配置文件工具。不幸的是,您的問題中的信息太少,無法爲接下來要檢查的內容提供更好的指導。 –