android-maven-plugin:禁用apk的调试版本

时间:2013-02-24 19:57:15

标签: android debugging maven build maven-plugin

我不清楚在使用android-maven-plugin构建时禁用调试版本的确切步骤:

我知道带有ADT(21.1)的导出向导会自动禁用调试,但它会被破坏,因为BuildConfig.DEBUG总是返回true并且我的日志记录过去依赖于它。 (现在我有自己的maven构建配置文件中定义的日志记录属性。)

因此,如果我必须使用android-maven-plugin禁用调试,那么正确的方法是什么?

我使用以下插件:

  1. 行家编译-插件
  2. 行家-的jarsigner-插件
  3. proguard的-行家-插件
  4. 带有zipalign目标和配置的android-maven-plugin。
  5. 我不确定签名和zipaligning是否会自动禁用调试,因为我在maven输出中看到以下行:

    [INFO] --- android-maven-plugin:3.5.0:apk (default-apk) @ stackx ---
    [INFO] Copying local assets files to combined assets directory.
    [INFO] Enabling debug build for apk.
    

    是否有明确的方法来禁用调试?

1 个答案:

答案 0 :(得分:34)

查看{Maver Plugin 3.5.0的changelog - 2012-12-18发布:

<强> 注意

由于非发布版本现在可以默认调试,因此您需要确保在发布版本中将release参数设置为true。

在pom中就是这样。

<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<configuration>
    <release>true</release>

或者您可以在命令行上激活,例如

mvn clean deploy -Dandroid.release=true

或者如果您使用发布插件,只需将上面的pom配置添加到发布配置文件中。

源代码:

com/jayway/maven/plugins/android/phase09package/ApkMojo.java

相关的拉取请求:

关闭主题:

对于日志记录管理,更优雅和战略性的方法是使用Proguard在项目发布阶段删除所有日志调用,有关详细信息,请参阅答案here