首页 > 解决方案 > 致命信号 11 (SIGSEGV) 改造

问题描述

我的模特

public class ModelMessage {
    private String message;
    public String getMessage() {
        return message;
    }
}

我的界面

public interface Noqta {
    @GET("api/")
    Call<ModelMessage> message();
}

我的活动呼叫点击

Retrofit retrofit = new Retrofit.Builder()
                .baseUrl("http://noqta.tk/")
                .addConverterFactory(GsonConverterFactory.create())
                .build();
        Noqta noqta = retrofit.create(Noqta.class);
        Call<ModelMessage> call = noqta.message();
        call.enqueue(new Callback<ModelMessage>() {
            @Override
            public void onResponse(Call<ModelMessage> call, Response<ModelMessage> response) {
                if(response.isSuccessful()){
                    tv.setText("True");
                }else{
                    tv.setText("False");
                }
            }
            @Override
            public void onFailure(Call<ModelMessage> call, Throwable t) {
                tv.setText("Error");
            }
        });

noqta.tk/api 上的 json 正文

{"message":"Hello World from api web"}

我在做什么坏事?我有清单上的互联网许可

标签: androidandroid-studioretrofit2

解决方案


将这两行添加到您的build.gradle的 android 部分:

android{
    compileOptions {
            sourceCompatibility 1.8
            targetCompatibility 1.8
    }
}

有人可以向我解释为什么这是解决方案吗?我看到错误出现在:

.baseUrl("http://noqta.tk/")

编辑

https://developer.android.com/studio/write/java8-support


推荐阅读