我的情況如下:我有一個遠程服務,任何應用程序都可以通過它與Messenger進行通信。應用程序發送我定義的定製事件每個事件定義一個要執行的「動作」(類似於Android的Intent
)。爲了測試服務發送和處理的事件,我想設置一個新的事件動作(例如EventAction.DEBUG
),但我不希望這個動作和處理它的代碼出現在發佈中。打開/關閉調試的最佳方法
這是我的想法:
- 使用
final static boolean
變量有條件地執行代碼。我不喜歡這個,因爲硬編碼變量。 - 從配置文件中讀取調試狀態。這很慢,編譯器也會生成代碼來處理調試,所以無用的比較會隨之而來。
- 在啓動時將調試標誌傳遞給應用程序。我忽略了在Android中如何做到這一點,或者即使這是可能的。另外我認爲這也會使編譯器生成調試代碼。
你認爲什麼是實現這一行爲最好的辦法?