2017-07-27 70 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你是对的请参阅上面的修改。 –