小编Dha*_*ngh的帖子

在android中发送多方或JSON数据时改进SocketTimeOutException

通过改造lib发送Mutipart或JSON数据时遇到问题

改造界面

@Multipart
@POST("/api/v1/protected/updateprofile")
void uploadPhoto(@Part("name") String name,
                 @Part("image") TypedFile file,
                 Callback<ApiResponseModel> callback);
Run Code Online (Sandbox Code Playgroud)

适配器代码

private RestApi restApi;
RestAdapter restAdapter = new RestAdapter.Builder().setClient(new OkClient(getClient())).setConverter(new GsonConverter(gson)).setRequestInterceptor(interceptor).setLogLevel(RestAdapter.LogLevel.FULL).setEndpoint(Config.baseUrl).build();
        restApi = restAdapter.create(RestApi.class);
Run Code Online (Sandbox Code Playgroud)

发送JSON请求后生成错误日志

D/Retrofit? ---- ERROR http://www.example.com/api/v1/protected/addfriends
11-05 11:22:18.594  13384-15325/com.veddislabs.plicx D/Retrofit? java.io.InterruptedIOException: timeout
            at okio.AsyncTimeout.exit(AsyncTimeout.java:258)
            at okio.AsyncTimeout$2.read(AsyncTimeout.java:215)
            at okio.RealBufferedSource.indexOf(RealBufferedSource.java:206)
            at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:153)
            at com.squareup.okhttp.internal.http.HttpConnection.readResponse(HttpConnection.java:189)
            at com.squareup.okhttp.internal.http.HttpTransport.readResponseHeaders(HttpTransport.java:101)
            at com.squareup.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:676)
            at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:426)
            at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:371)
            at com.squareup.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:466)
            at retrofit.client.UrlConnectionClient.readResponse(UrlConnectionClient.java:73)
            at retrofit.client.UrlConnectionClient.execute(UrlConnectionClient.java:38)
            at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:321)
            at retrofit.RestAdapter$RestHandler.access$100(RestAdapter.java:220)
            at retrofit.RestAdapter$RestHandler$2.obtainResponse(RestAdapter.java:278)
            at retrofit.CallbackRunnable.run(CallbackRunnable.java:42)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
            at retrofit.Platform$Android$2$1.run(Platform.java:142)
            at java.lang.Thread.run(Thread.java:856)
     Caused by: …
Run Code Online (Sandbox Code Playgroud)

android retrofit okhttp

7
推荐指数
1
解决办法
1万
查看次数

在 Kotlin 中编写 React Native android 模块?

React 原生文档提供了一个用 java 编写的Toast 模块示例。

同样的例子在 Kotin 中是什么样子的?
android项目的配置有什么特别的步骤吗?

kotlin react-native react-native-android

5
推荐指数
1
解决办法
2693
查看次数