Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
76 lines (55 sloc) 2.88 KB

OkHttpProfiler

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.

Screen2


Download

Installation

For installation, you need to include the library to your app build.gradle file

implementation 'com.itkacher.okhttpprofiler:okhttpprofiler:1.0.5' 

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

Screen2

Screen3

Screen1

Screen4

Have fun!