2011-08-18 96 views
7

我們有一個AdWhirl贊助版本的應用程序(Moonrise),並且希望提供無廣告的.99.99版本。製作兩個版本 - 精簡版和專業版 - 同一個應用程序

出於維護原因,我想要一個應用程序,我只需更改一些#defines即可打開和關閉廣告。

但是,如何編譯爲兩個不同的「應用程序包」,可以這麼說,它們有不同的名稱和包標識符?

我想我只是在試用之前提出一個單挑,如果有一個問題我應該考慮。另外,如果有更簡單的方法,我想知道(因爲這在開發者中應該很常見)。

計劃是

  1. 創建一個包標識符,改變它的-info.plist
  2. 用新的名稱,更改捆綁顯示名稱和圖標
  3. 撥打#創建一個新的應用程序定義或比如我曾經錯過了什麼也不會顯示廣告
  4. 上傳到App Store的

+0

可能的重複[如何管理構建精簡版與付費版本的iPhone應用程序?](http://stackoverflow.com/questions/549462/how-do-i-manage-building-a-lite- vs-paid-version-of-iphone-app) –

回答

9
  1. 創建新的捆綁標識符
  2. 爲您的應用程序創建一個更加的.plist文件中新的.plist文件
  3. 添加(可能會複製現有的)
  4. 更改應用程序名稱,捆綁標識符等另一個目標(可能會複製現有的)
  5. 查找目標設置「的Info.plist」 entrie並將其更改爲新的
  6. 添加一些用戶定義的標誌在目標設定s到標誌有何其中之一是LITE而另一個沒有LITE
  7. 配置方案針對不同的目標

如果你會做什麼都好,你將能夠使用單個項目來構建不同的版本吧。

+0

謝謝。但正如我擔心的那樣,通過觸摸這些東西,它打破了編譯器。可悲的是,「無所不能」無關。複製目標後,我得到了兩個同名的.app產品 - 我應該擔心嗎?在將兩個目標正確指向副本更改.plist之後,我只能在設備上運行它。在模擬器模式下,它突然抱怨在項目文件夾的路徑中有一個空間的目錄。另外,你能解釋一下你的意思嗎? –

+1

請參閱:http://stackoverflow.com/questions/8456420/how-to-build-a-free-version-from-a-paid-version-without-duplicating-the-xcode-4 – dontWatchMyProfile

+0

幾個XCode版本後來它的工作方式與您所描述的相似。我更喜歡只複製目標文件並拖動文件,並檢查複製複選框,以複製XCode中的文件,因爲項目和文件夾導航器仍然是錯誤的。現在我們有一個更好的文件檢查器,您可以激活並準確查看每個文件屬於哪個目標。方案通常不必更改,並且可以通過#if語句將源副本保留在最小值。 –

相關問題