私のシナリオは次のとおりです。Messenger を介して任意のアプリケーションと通信できるリモート サービスがあります。アプリケーションは、私が定義したカスタム イベントを送信します。各イベントは、実行する「アクション」を定義します (Android の に似ていますIntent
)。サービスによるイベントの送信と処理をテストするために、新しいイベント アクション (例: ) をセットアップしたいEventAction.DEBUG
のですが、このアクションとそれを処理するコードをリリースに含めたくありません。
これは私が考えたことです:
final static boolean
変数を使用して条件付きでコードを実行します。ハードコードされた変数のため、これは好きではありません。- 構成ファイルからデバッグ状態を読み取ります。これは遅く、コンパイラはデバッグを処理するコードを生成するため、無駄な比較が行われます。
- 起動時にアプリケーションにデバッグ フラグを渡します。Androidでこれを行う方法、またはこれが可能であっても無視します。また、これにより、コンパイラがデバッグ コードを生成することにもなると思います。
この動作を実装するための最良のアプローチは何だと思いますか?