消息关闭
    暂无新消息!

Retrofit如何实现同步

问题作者 : 十二少2017-08-15发布
同步请求服务器数据,应该很常用吧。

比如登陆  验证登陆。要写到一个方法里,而不是直接在Activity里写吧。

public static Boolean Validate()
{

Retrofit retrofit = new Retrofit.Builder()
                .baseUrl("http://test9.**.com")
                .addConverterFactory(retrofit2.converter.gson.GsonConverterFactory.create()).build();

        ApiService apiService = retrofit.create(ApiService.class);

        Call<HashMap<String,String>> call = apiService.getIpInfo();
        try
        {
            HashMap hmap= call.execute().body();
            returnStr=hmap.get("Success").toString();
        }
        catch (Exception ex)
        {
            returnStr=ex.getMessage();
        }
}

总是提示 android.os.NetworkOnMainThreadException


2个回答

︿ 0
给你个地址自己看看用法吧 http://blog.csdn.net/duanyy1990/article/details/52139294
︿ 0
请求网络不能在主线程,你可以新开个线程请求,成功后给主线程发送消息,主线程收到消息后再处理需要改变的