OkHttpProfiler Android Library
LocaleBro.com - Android Localization Platform
Created byIevgenii Tkachenko
Support DeveloperImportant! Package migration!
JFrog Bintray is shutting down, so the OkHttpProfiler plugin was migrated to Maven Central. To migrate your plugin just change old package (com.itkacher) to the:
implementation 'com.localebro:okhttpprofiler:1.0.8'
and change
import com.itkacher.okhttpprofiler.OkHttpProfilerInterceptor;
with the
import com.localebro.okhttpprofiler.OkHttpProfilerInterceptor;
in your code.
Also the OkHttp client was excluded from okhttpprofiler, so feel free to include the latest version directly: OkHttpClient
implementation("com.squareup.okhttp3:okhttp:4.9.0")
End Important
The OkHttp Profiler plugin can show requests from the OkHttp library directly in the Android Studio tool window. It supports the OkHttp v3 (http://square.github.io/okhttp/) and the Retrofit v2 (https://square.github.io/retrofit/)
You can debug OkHttp request or response headers, inspect the JSON as a tree, as a plain text etc. And you can easily create a Java/Kotlin model from the data. Just click the right mouse button on a root element of the tree (or any other), choose Java or Kotlin, and select a folder for a new file in the project.
Installation
For installation, you need to include the library to your app build.gradle file
implementation 'com.localebro:okhttpprofiler:1.0.8'
and add Interceptor to okHttpClient in code
For OkHttp
Java
OkHttpClient.Builder builder = new OkHttpClient.Builder();
if (BuildConfig.DEBUG) {
builder.addInterceptor(new OkHttpProfilerInterceptor());
}
OkHttpClient client = builder.build();
Kotlin
val builder = OkHttpClient.Builder()
if (BuildConfig.DEBUG) {
builder.addInterceptor(OkHttpProfilerInterceptor() )
}
val client = builder.build()
For Retrofit
Java
OkHttpClient.Builder builder = new OkHttpClient.Builder();
if (BuildConfig.DEBUG) {
builder.addInterceptor(new OkHttpProfilerInterceptor());
}
OkHttpClient client = builder.build();
Retrofit retrofit = new Retrofit.Builder()
......
.client(client)
.build();
Kotlin
val builder = OkHttpClient.Builder()
if (BuildConfig.DEBUG) {
builder.addInterceptor( OkHttpProfilerInterceptor() )
}
val client = builder.build()
val retrofit = Retrofit.Builder()
......
.client(client)
.build()
For security reasons we recommend to enable OkHttpProfilerInterceptor only for DEBUG BUILDS!
Also Proguard will cut it out in the release build.
And then enable Android Studio plugin
https://plugins.jetbrains.com/plugin/11249-okhttp-profiler
Have fun!
Source Codes
OkHttp Profiler Plugin Sources.
OkHttp Profiler Android Library.
Issue with the Android Studio version 4.1 solved in plugin v1.0.13+:
Unfortunately, Google changed realisation of one class but Intellij doesn't. I fixed it, but Intellij IDEA is no longer supported by the OkHttProfiler.