2014-03-25 36 views
0

我正在完成我的第一個應用程序,並研究了在同一個項目中使用兩個目標的一些方法。有幾個功能會減少免費版本,並會添加adbmob橫幅。 遵循誰曾來區分目標的各種教程,一個是這樣的: How to get Target name?在同一個項目中構建免費和付費應用程序的最佳方法是什麼?

我研究了其他方法來完成這項任務是舊的線程,不能使它發揮作用。

我試着添加FREE_VERSION預編譯器宏併發生了很多錯誤。我還嘗試在LLVM 5.1 - 自定義編譯器標誌內的其他C標誌中添加FREE_VERSION。

我不確定這些方法是否仍然有效,或者是否有更好的方法。有沒有人有更現成的方法來完成這個,或者我可以使用在主題開頭引用的方法嗎?

+0

你需要更具體地說明你的意思是「更好」。 –

+0

如果在使用預編譯宏時出錯,顯然你做錯了。這是經常使用的東西(我在每個項目中都有很多它們,都在.pch中,並在xcconfig文件中定義)。但是,「發生了很多錯誤」並不是我們可以使用的描述。 – DarkDust

+0

@RobertHarvey我懷疑是否我使用的方法是「正確的」方法。如果它發送到蘋果真的會工作。 –

回答

1

可以使用預處理宏屏蔽掉應當只在一個版本或其他運行代碼,你可以使用用戶定義的構建設置來區分你的應用程序的屬性列表中的重要領域。只要確保在提交時以正確的構建方案生成每個版本的存檔。但是,蘋果對「上調」的態度變得不那麼友好,所以如果你的免費版本要求用戶考慮下載付費版本,它可能會被拒絕(他們會引用準則2.9)。爲了避免這種情況,您可以創建一個免費的單一版本,並通過應用內購買進行升級,或者您可以小心確保免費版本不會將用戶推向付費版本。

+0

謝謝!我評論了可以使用宏的主題。非常有趣的是,你現在告訴我這個問題,我將首先發送付費版本,因爲我仍然必須在免費版本中完成一些操作,所以我會看看是否使用了應用內購買功能。謝謝你的提示! –

相關問題