3

Androidアプリの送信では、送信前にログを削除してください。これについていくつか質問があります

  1. System.out.printlnロギングと見なされますか?1つ削除せずに、アプリ全体で無効にするにはどうすればよいですか?
  2. マニフェスト内で試しandroid:debuggable="false"ましたが、eclipseは「デバッグモードのハードコーディングは避けてください。除外すると、デバッグビルドとリリースビルドで自動的に割り当てられるようになります」と述べています。
  3. アプリをテストしたときにLogステートメントを表示するサードパーティのjarファイルがいくつかあります。ソースがないことを考慮して、どうすればそれらを削除できますか。

提案は大歓迎です。

4

1 に答える 1

2

ログがすでに存在するため、if(GLOBAL_VALUE)トリックを実行できるという事実に出くわしたと思います。

したがって、私の提案はProguardを使用することです。http://developer.android.com/tools/help/proguard.html

次のproguard.cfgチャンクは、Log.d呼び出しを削除するように指示します。

-assumenosideeffects class android.util.Log {
    public static *** d(...);
}

そこに置いた値に基づいて、Log.i、Log.eなどの他の呼び出しに対してそれを行うことができます!

Jarに関しては、Android Logシステムを参照している場合は、ProGuardがそれを処理する必要があります。

于 2012-10-14T09:00:39.140 に答える