2013-05-16 128 views
2

我有一個Cocoa Mac App,我不知道它是否會在Mac AppStore上。 該應用程序仍處於開發階段,我希望很少有人能夠在應用程序獲得新功能的同時在其設備上啓動應用程序。在註冊設備上測試Mac App

的情況如下:

  • 我有一個蘋果開發者證書
  • 設備在MAC會員中心註冊。

他們啓動應用程序時,都會抱怨的GateKeeper應用並非來自Mac的AppStore的,也不是由開發商確定,不管我是否簽署應用或沒有提供。

因此,我試圖簽署它,並將配置文件嵌入到應用程序中。如果我沒有簽署它沒有嵌入任何東西。

我應該提到該應用程序中包含Spotlight導入器和QuickLook生成器。

關於如何在Apple文檔中解決此問題,我沒有找到任何明確的解釋,並且大多數(如果不是全部的話)博客文章或Internet上的文章都是關於iPhone應用程序,而不是Mac應用程序(進程/在兩個平臺上的需求似乎不同)。 如果所有測試人員都應該成爲團隊成員(這看起來很瘋狂,因爲其中一些人不是開發人員並且沒有安裝Xcode),文檔還不清楚。

有人可以提供清楚的一步一步的解釋如何做到這一點?
或者可能是文章/博客文章鏈接或提示?

編輯:

這裏是應用程序包結構的截圖和插入式結構:

​​ enter image description here

一切似乎是正確的。 我獲得的方式是:我沒有設置「代碼簽名標識」構建設置,而是歸檔應用程序,並在當時指定了代碼簽名標識。

編輯:

越來越多的好奇,當我在終端,codesign -vvv MyApp.app運行codesign命令,輸出趨於表明,所有被正確地完成:

MyApp.app:有效磁盤上
MyApp.app:滿足其指定要求

+0

您是否使用Team Provisioning Profile進行簽名? – gaige

+0

@gaige是的,我已經生成了一個配置文件,包括我的證書和測試設備UUID,並使用我的代碼簽名標識(附加到該配置文件)簽署應用程序。 – Vince

+0

如果您在以下鏈接執行此過程,您是否看到爲您用於簽署應用程序的配置文件列出的硬件UUID? 「供應配置文件中的UDID」http://stackoverflow.com/questions/3398560/udids-in-provisioning-profile/9778131#9778131 – Bobjt

回答

3

解釋此問題本質上是:

「我該如何測試Mac App Store應用程序」?

蘋果尚未公佈在App Distribution Guide一個正式的工作流程,但下面的工作流程:

  • 測試儀發送「系統信息工具>硬件選項卡>硬件UUID」給開發商

  • 開發人員更新開發人員配置文件以包含硬件UUID

  • 開發人員使用Xcode Organizer Archives選項卡,Di stribute>「另存爲Mac應用程序」,然後選擇更新的開發簽名標識。

  • 開發者發送新建應用測試儀

注:發展的身份有黃色的警告!圖標在重新簽名過程中,但仍然可以使用。

這不僅可以避免GateKeeper提示,而且開發預配置配置文件也可能用於在測試過程中可能用於工作的任何存儲技術,例如, iCloud,GameCenter等。

+0

正如我在問題中提到的,該應用程序包含兩個插件(Sptolight,QuickLook)。你認爲這與它有關嗎?我的意思是,插件也應該簽名(我是對嗎?)。我將上傳應用程序包結構的屏幕截圖...以便您看到。 – Vince

+0

插件不需要簽署AFAIK。是否有錯誤信息暗示,或者,Gatekeeper提供的指定語言是什麼? – Bobjt

+0

守門人只是拒絕啓動應用程序(安全級別僅限於已確定的開發人員和Mac App Store),抱怨發佈應用程序*的開發人員未被識別。 – Vince