honeybread

システム開発の忘備録

【android】アプリのデバッグ時にHTTPClientの通信をdumpする方法

web apiとやり取りをするandroidアプリの開発でデバッグ時にアプリからどんなリクエストが行われているのか、またどんなレスポンスが返ってきているか確認したい場合があります。

そんなときに、Eclipse上で以下の設定を行うと、LogCatでJakarta Commons HTTPClientでの通信をdumpすることができます。

ソースコードに以下のコードを追加

java.util.logging.Logger.getLogger("org.apache.http.wire").setLevel(java.util.logging.Level.FINEST);

java.util.logging.Logger.getLogger("org.apache.http.headers").setLevel(java.util.logging.Level.FINEST);

 

②adb shellで以下の値を設定

adb shell setprop log.tag.org.apache.http.wire VERBOSE

adb shell setprop log.tag.org.apache.http.headers VERBOSE

 ただし、リリース時にはHttpの通信ログ出力によるパフォーマンスの低下やセキュリティ上の観点から、①で記述したコードを削除もしくは、通らないようにする必要があるので注意が必要です。