2012-05-08 23 views
14

我試圖針對某些特定的企業分佈爲我的應用程序構建IPA文件。我一直在研究如何使用Xcode 4.3.2(我目前使用的版本)來實現這一點,並且我已經達到了在組織者中選擇'Save for Enterprise或ad-hoc deployment'選項的地步。問題是這個選項實際上並沒有出現在第一位。實際上,我只有'Save Built Products'和'導出爲Xcode存檔'選項。保存企業版或臨時部署不存在

我想象的問題在於我的應用程序的一些配置設置,但一直無法通過網絡找到任何幫助。因此,我的問題在這裏:-) 希望能幫助我們理解我的代碼有什麼問題。

在此先感謝任何幫助此處的人。

乾杯。

+0

您是否創建了臨時設置配置文件並將其添加到Xcode? – olirip

+0

我確實創建了配置文件,我不確定'ad hoc'是什麼意思。我在創作中使用過助理,並將配置文件放在XCocde中,我可以在組織者中看到它是有效的。我應該做什麼特別的事情? 乾杯。 – Diferdin

+0

如果你去到蘋果開發門戶網站,然後在iOS的供應PROFIL,您可以創建這種分佈的ad hoc配置文件。見[這裏](https://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/ios_development_workflow/10-Configuring_Development_and_Distribution_Assets/identities_and_devices.html#//apple_ref/doc/uid/TP40007959-CH4-SW7) – olirip

回答

45

如果你的項目使用了第三方的lib作爲一個子項目,有一對夫婦,你可能需要改變,這樣的xcode會認識到你的應用程序爲單束,而不是多個產品設置。只有單包應用程序可以保存用於企業或臨時部署,或提交給應用程序商店。

首先,在生成設置第三方的lib目標選項卡,設置跳過安裝設置

其次,在構建階段第三方的lib目標標籤,看在複製頭階段,並確保有在公共私人部分無標題(他們都應該在項目部分)。

+1

拯救了我的一天! –

+0

哦..感謝這個回覆,它節省了我的巨大時間。 – Whoami

+0

你這個人! :D – Legolas

1

也許你已經這樣做了,但我們必須確定。

您是否已在產品和目標中指定了adhoc分發的代碼簽名標識以作爲您的新產品。個人資料?

然後你嘗試存檔你的應用程序? (Product - > archive)如果它是灰色的,只需指定目標爲iOS設備,即使沒有設備插入。

如果存檔成功,您應該在組織者中存檔。選擇它,然後選擇像往常一樣分發。

+0

謝謝。代碼清理是使用我的分發配置文件完成的,並且我正確地獲取了存檔。但是,當我點擊'分配'我看不到'節省企業或臨時部署'選項... – Diferdin

+0

這很奇怪。也許你現在可以考慮在Mac App Store上使用AppDropOta等第三方應用... – olirip

+0

仍然沒有線索,但也許這[link](http://blog.zuco.org/2012/04/30/how -to-distribute-ad-hoc-apps-xcode-4-3-2 /)可以幫助你... – olirip

1

我今天經歷了一些事情。沒有選項可以導出ad-hoc。所以通過「驗證設置」來解決這個問題。

  1. 轉到你的項目目標,
  2. 在配置表中會出現所謂的「驗證設置」時鐘按鈕。點擊它
  3. ,然後點擊「執行更改」
  4. 建立歸檔再次

爲了解釋這一問題,它看起來像Xcode中瞭解項目的文件的Mac應用程序,而不是iOS應用。

希望這會有所幫助。

7

我終於明白了這一點。事實證明,問題在於我通過包含他們的(源)Xcode項目而不是預編譯的庫來使用第三方庫。出於某種原因,Xcode將它們視爲不同的應用程序,並且不會讓我將它們全部包裝在一個IPA中。 我刪除了項目,刪除了實際的靜態庫和頭文件,生成了存檔文件並... tadaaah:在這裏我可以編輯我最想要的導出選項。

謝謝大家的幫助,特別感謝The Saad幫我找到了這個。

4

好吧,我在使用GMGridView時遇到了同樣的問題。我沒有使用Diferdin的解決方案,因爲我仍然想保留GMGridView項目。 我的解決方案是:轉到GMGridView的目標,單擊「Build Phases」 - >「Copy Headers」,然後將「Public」和「Private」下的所有頭文件移動到「Project」。 重做產品 - >存檔,那麼您可能會發現選項「保存企業版或臨時部署不存在」。 這對我有用,希望對任何遇到同樣問題的人都有幫助。 我也相信這個想法也可以應用於任何其他第三方項目。 祝你好運!

0

正如跟進,我知道其他幾個人回答。我遇到了這個問題,這篇文章中的答案非常有幫助。一些總結迴應:

  • 對於我來說,這不是一個配置文件問題。我已經完成了大量adhoc和分發應用程序二進制版本,所以我知道這不是我的情況中的配置文件問題。

  • 我拿了一張海報的建議,並沒有項目「驗證設置」,並進行了一些修改建議......但這並沒有解決問題。

  • 的問題是在沒有使它成爲了一次束事實項目庫。就我而言,我有一些圖書館,有自己的資源包。關鍵在於,當您進行存檔構建時,請確保並選擇構建,選擇「show in finder」,然後選擇「顯示包內容」,以查看沒有將其添加到主應用程序包中的附加內容。這就是我如何找到一些額外的資源包,這些資源包被捆綁到一些我甚至不需要的庫中。

0

我發現的有用的東西是在您的主項目上關閉Skip Install。如果歸檔後仍看到創建的包(組織者彈出),則子項目仍在創建產品。關閉所有子項目Skip Install(跳過安裝)到NO(無),並使項目進入歸檔文件未在Organizer中彈出的位置。然後,您可以在主項目上安全地將Skip Install(跳過安裝)設置爲YES,並且成就的閃閃發光會出現在您的大腦中。