Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 改装不返回任何响应_Android_Gson_Retrofit - Fatal编程技术网

Android 改装不返回任何响应

Android 改装不返回任何响应,android,gson,retrofit,Android,Gson,Retrofit,我正在尝试使用Synchronus调用连接并获取数据到我的一个API try{ RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint(finalUri.toString()).build(); IGooglePlacesApi iGPlaceApi = restAdapter.create(IGooglePlacesApi.class);

我正在尝试使用
Synchronus
调用连接并获取数据到我的一个API

try{            
            RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint(finalUri.toString()).build();
            IGooglePlacesApi iGPlaceApi = restAdapter.create(IGooglePlacesApi.class);
            mGooglePlacesApiResponse googlePlacesObj = iGPlaceApi.getStreams();
            RetrofitError retrofitError;
        } catch (IOException e) {
            serverResponse = e.getMessage();
        } catch (IllegalArgumentException e) {
            serverResponse = e.getMessage();
        } catch (InterruptedException e) {
            e.printStackTrace();
        } finally {
            Log.d("serverResponse:", serverResponse);
        }
在此声明如下:

public interface IGooglePlacesApi {
    @GET("/stream/list.json")
    mGooglePlacesApiResponse getStreams();
}
问题是当我调用
iGPlaceApi.getStreams()时我没有得到结果,也没有任何错误。但是我的代码直接进入finally块


为什么会这样,没有结果,没有收获。如何更正此问题?

改型将所有内部异常包装为一个改型错误异常,并抛出该异常。在您的情况下,您没有捕获该异常,因此只执行finally块

尝试以这种方式修改代码

try {            
    RestAdapter restAdapter = new RestAdapter.Builder().setEndpoint(finalUri.toString()).build();
    IGooglePlacesApi iGPlaceApi = restAdapter.create(IGooglePlacesApi.class);
    mGooglePlacesApiResponse googlePlacesObj = iGPlaceApi.getStreams();
} catch (RetrofitError e) {
    serverResponse = e.getMessage();
} finally {
    Log.d("serverResponse:", serverResponse);
}
根据故障引发的错误将包含异常原因或服务器报告的状态。然后,您可以从那里应用必要的逻辑

出于更一般的目的,可以在创建RestaAdapter时设置错误处理。在try/catch中捕获错误之前,将执行此ErrorHandler