前人未踏の領域へ Androidアプリ開発編

Androidアプリ開発に関する調査メモ置き場。古い記事にはアプリ以外も含まれます。

StethoでPicassoのデバッグを可能にする

課題

Picassoのリクエストヘッダーの内容をStethoで確認したい。
どうすればよいか。

対応

以下のような感じでPicassoの初期化メソッドを用意し、Applicationクラスなどから一度だけ呼んであげれば良い。
BuildConfig.DEBUG がtrueの場合のみ処理されるようにしている。

/**
 * Debug可能な状態でPicassoを初期化する
 */
fun initPicasso(context: Context) {
    if (BuildConfig.DEBUG) {
        val client = OkHttpClient.Builder().addNetworkInterceptor(StethoInterceptor()).build()
        val p = Picasso.Builder(context)
            .downloader(OkHttp3Downloader(client))
            .loggingEnabled(true)
            .indicatorsEnabled(true)
            .build()
        Picasso.setSingletonInstance(p)
    }
}

参考