2015-02-04 78 views
2

我目前正在開發一款實際可用於Google Play的應用,它有兩個不同版本。其中一個功能齊全,運行時沒有任何廣告。另一個則無法訪問每個功能並顯示廣告。在Android Studio中開發相同應用的兩個版本

我正在用兩個不同的android studio項目和 兩個不同的存儲庫管理這兩個版本。

我只是想知道如何更好地管理這兩個版本的相同應用程序的開發。我已經閱讀了一些關於gradle中的口味的東西,但我不知道它們對我來說是否有用。我想過的其他事情是,也許我可能只有一個存儲庫和一個分支,我只是爲那些功能不同的文件提供不同的文件,並保留常用的文件更新。

那麼,哪種處理這種情況的方法更好?歡迎任何其他想法。

在此先感謝您的幫助

+0

[使用Build Flavors - 正確構建源文件夾和build.gradle]的可能重複(http://stackoverflow.com/questions/16737006/using-build-flavors-structuring-source-folders-and-build-gradle - 正確) – 323go

回答

2

Gradle風味是你在找什麼。有了它們,您可以將所有常見代碼和資源集中在一個地方,因此不需要複製它,並且可以在另一個地方使用不同的代碼和資源。 Flavors還提供了一種構建應用程序的多個版本的便捷方式。

從你描述似乎都你的應用程序的版本幾乎是相同的,所以你的情況,你只需要一個布爾值來區分它們:

if (FULL_VERSION) { 
    unlockFeature(); 
} 
else { 
    showAd(); 
} 

你可以通過創建一個實現此每個風味類別,一個常量設置爲true,另一個常量設置爲false。一個更加面向對象的設計將會有一個類來解鎖一種風格的功能,另一種則會爲另一種風格展示一個廣告。

請注意,口味產生具有不同包名的APK,因此您無法通過應用內購買來解鎖功能並刪除廣告。

+0

如果我可能會問,您認爲使用應用內購買方法刪除增加的最佳方法是什麼? – Marcus

相關問題