android - 改造不会在断点处停止

标签 android debugging retrofit retrofit2 breakpoints

我正面临这个问题,当我调用改造时,该调用不会在断点处停止。

ClashResponse clashResponse = new ClashResponse();

    clashApi = clashResponse.getClashApi();

    clashApi.getAllArenas().enqueue(new Callback<String>() {
        @Override
        public void onResponse(Call<String> call, Response<String> response) {
            ClashApiBuilder<ArenaData> clashApiBuilder = new ClashApiBuilder(ArenaData.class);

            arenaList = clashApiBuilder.convert(String.valueOf(call));
        }

        @Override
        public void onFailure(Call<String> call, Throwable t) {
            t.getCause();
        }
    });

我的毕业典礼

  //Retrofit
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.3.0'
compile 'com.squareup.retrofit2:retrofit:2.3.0'

我的 retrofit builder :

public ClashResponse(){
    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(SERVER_URL)
            .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
            .addConverterFactory(GsonConverterFactory.create())
            .build();

    return retrofit.create(ClashApi.class);
}

最佳答案

如果您想调试您的 Api 调用,请使用 chuck 拦截器,它只能在 Debug模式下工作。在您的应用程序 build.gradle 中添加以下依赖项。

 debugCompile 'com.readystatesoftware.chuck:library:1.1.0'
 releaseCompile 'com.readystatesoftware.chuck:library-no-op:1.1.0'

获取okHttp3的引用

 public OkHttpClient getClient(Context context) {
    // Add the interceptor to OkHttpClient
    OkHttpClient.Builder builder = new OkHttpClient.Builder();
    builder.addInterceptor(new ChuckInterceptor(context));
    builder.readTimeout(READ_TIMEOUT, TimeUnit.MINUTES);
    builder.connectTimeout(CONNECT_TIMEOUT, TimeUnit.MINUTES);
    return builder.build();
}

现在获取 Retrofit 实例并添加此 okHttp 客户端

 public RestApi connectToApi() {
        Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(BASE_DOC_URL)
                //Data converter
                .addConverterFactory(GsonConverterFactory.create())
                .addCallAdapterFactory(RxJava2CallAdapterFactory.create())
                .client(getClient(context))
                .build();
        return retrofit.create(RestApi.class);
}

现在您可以从通知栏跟踪所有 Api 调用。

关于android - 改造不会在断点处停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48594417/

相关文章:

android - 尝试在 android 设备上调试我的应用程序时获取 "Launch error: Failed to connect to remote VM. Connection timed out"

c++ - 如何知道在C++中抛出异常的原因

android - @NonNull 注释在 Android Studio 中不起作用

android - 如何在android XML中将复选框(复选框)颜色更改为白色

android - 如何创建一个与我们在带有边框的 html 中创建的表格完全相同的表格?

调试 Azure 移动服务身份验证

android - 改造 java.net.SocketTimeoutException

java - 构建请求时出现 Android Retrofit 错误

android - 未显示所有数据,但带有 RecyclerView 的 AdMobs

android - 我们如何使用android :inputType in EditTextPreference?