2017-07-27 67 views
2

我想發佈我的應用程序的演示版和完整版。基於構建配置文件的條件AndroidManifest屬性?

如何我:

  • 定義不同的創建個人資料,這樣,如果我建apk我得到兩個應用程序,一個完整的和一個用於演示?
  • 更改<application android:label="@string/app_name">?例如,對於完整版本,我想使用@String/app_name,但對於演示版本配置文件,請使用app_name_demo?應用程序名稱也是本地化的!

難道我無論如何都與gradleproductFlavors部分工作?

像:

productFlavors { 
     demo { 
      applicationIdSuffix ".demo" 
      versionNameSuffix "-demo" 
     } 
    } 

但我找不到如何實現上述我的觀點。

+0

它聽起來像你想使用productFlavors,但有一點,每個構建版本都有自己的apk – lelloman

回答

1

編輯 去productFlavors

productFlavors { 
     demo { 
      applicationIdSuffix ".demo" 
      versionNameSuffix "-Demo" 

     } 

     release { 
      minifyEnabled true 
      shrinkResources true 
      debuggable false 

     } 
    } 

下/應用/ src目錄 1.演示 2.釋放

地方constant.xml文件創建兩個文件夾,然後把你的應用程序標籤有相應。根據您的構建類型,您的應用程序名稱將被提取。

也在每個產品flavor文件夾中,您可以創建與app主文件夾相同的目錄結構。

因此,最終的結構會是這樣

/demo/res/values/constant.xml 
/demo/res/values-fr/constant.xml 

這樣的事情。

+0

如何在這些文件夾下添加本地化值?目前我有'values/strings.xml'和'values-fr/string.xml'。當然,我也想更改所有本地化的'app_name_demo'。 – membersound

+0

我認爲你的建議是不好的做法,如果你想根據不同的功能(如demo/full)區分應用的2個版本,構建類型將用於同一應用的不同配置口味 – lelloman

+0

@lelloman你是對的請參閱上面的修改。 –