15

android-maven-pluginでビルド中にデバッグビルドを無効にするための正確な手順がわかりません。

ADT(21.1)を使用したエクスポートウィザードは自動的にデバッグを無効にすることを理解していますが、BuildConfig.DEBUGは常にtrueを返し、ログはそれに依存していたため、壊れています。(これで、Mavenビルドプロファイルで定義されたロギング用の独自のプロパティがあります。)

したがって、android-maven-pluginを使用してデバッグを無効にする必要がある場合、それを行う正しい方法は何ですか?

私は次のプラグインを使用しています:

  1. maven-compiler-plugin
  2. maven-jarsigner-プラグイン
  3. proguard-maven-plugin
  4. android-maven-zipalignの目標と構成を備えたプラグイン。

Maven出力に次の行が表示されるため、署名とzipaligningによってデバッグが自動的に無効になるかどうかはわかりません。

[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.

デバッグを無効にする明示的な方法はありますか?

4

1 に答える 1

34

Android Mavenプラグイン3.5.0の変更ログを確認してください-2012年12月18日リリース:

注意

非リリースビルドはデフォルトでデバッグ可能になっているため、リリースビルドでリリースパラメータが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

または、リリースプラグインを使用する場合は、上記のpomconfigをリリースプロファイルに追加するだけです。

ソースコード:

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

関連するプルリクエスト:

オフトピック:

ログ管理の場合、より洗練された戦略的な方法は、プロジェクトのリリースフェーズでProguardを使用してすべてのログ呼び出しを削除することです。詳細については、こちらの回答を参照てください。

于 2013-02-24T21:15:47.653 に答える