是的,Android 利用 Stetho 库可以打印出所有网络请求。以下是示例代码:

  1. 添加依赖

在项目的 build.gradle 中添加以下依赖:

dependencies {
    // Stetho 库
    implementation 'com.facebook.stetho:stetho:1.5.0'
    // OkHttp3 网络请求库
    implementation 'com.squareup.okhttp3:okhttp:3.12.0'
}
  1. 初始化 Stetho

在 Application 类的 onCreate() 方法中初始化 Stetho:

import com.facebook.stetho.Stetho;

public class MyApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
        Stetho.initializeWithDefaults(this);
    }
}
  1. 使用 StethoInterceptor

在 OkHttp3 的网络请求中添加 StethoInterceptor,用于打印网络请求信息:

import com.facebook.stetho.okhttp3.StethoInterceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 创建 OkHttpClient
        OkHttpClient client = new OkHttpClient.Builder()
                .addNetworkInterceptor(new StethoInterceptor())
                .build();

        // 创建 Request
        Request request = new Request.Builder()
                .url('https://www.example.com')
                .build();

        // 发送网络请求
        try {
            Response response = client.newCall(request).execute();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上代码中,使用 OkHttpClient 创建了一个网络请求,通过 addNetworkInterceptor() 方法添加了 StethoInterceptor,用于打印网络请求信息。发送网络请求后,可以在 Chrome 浏览器的 DevTools 中查看网络请求信息。

Android 使用 Stetho 打印所有网络请求 - 详细示例

原文地址: https://www.cveoy.top/t/topic/odYr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录