내 Android 앱에서 Google 드라이브에 파일을 업로드해야합니다. 어제까지 업로드에 문제가 없었습니다. 1 년 넘게 잘 작동했습니다. 갑자기 모든 업로드가 실패합니다. 대부분 "Read Timed Out"을 얻지 만 가끔 java.io.eofexception을 얻을 것입니다. 업로드 중 일부는 방금 지연됩니다. 보통 2 초가 아닌 작은 파일의 경우 20 초가 걸리지 만 대부분 실패합니다. 업로드는 다른 하나 다음에 바로 발생하며 10 번의 업로드 중 1 ~ 2 번에서이 문제가 발생합니다.시간 초과 읽기 Google 드라이브에 업로드
최신 google-api-services-drive-v2-rev82-1.14.2-beta.jar 라이브러리와 함께 최신 1.15.0-rc 라이브러리를 사용해 보았습니다. 아무것도 도움이되는 것 같지 않습니다.
Google 드라이브에서 문제가 발생합니까? 상태 페이지를 확인했지만 아무런 문제가 나타나지 않습니다.
또한 내 코드를 모두 제거하는 새로운 테스트 프로젝트를 만들었고 새로운 코드를 사용하여 mediastore에서 연속으로 10 개의 파일을 테스트로 업로드했으며이 앱에도 동일한 문제가 있습니다.
EDIT : 나는 3 개의 다른 네트워크에서 테스트를했는데 모두 동일한 동작을 보였다.
06-28 06:09:12.942: W/HttpTransport(5758): exception thrown while executing request
06-28 06:09:12.942: W/HttpTransport(5758): java.net.SocketTimeoutException: Read timed out
06-28 06:09:12.942: W/HttpTransport(5758): at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_read(Native Method)
06-28 06:09:12.942: W/HttpTransport(5758): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:664)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.io.Streams.readSingleByte(Streams.java:41)
06-28 06:09:12.942: W/HttpTransport(5758): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:648)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.io.Streams.readAsciiLine(Streams.java:201)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:573)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:821)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:283)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:495)
06-28 06:09:12.942: W/HttpTransport(5758): at libcore.net.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:134)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.http.javanet.NetHttpResponse.<init>(NetHttpResponse.java:37)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:95)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:980)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.googleapis.media.MediaHttpUploader.executeCurrentRequest(MediaHttpUploader.java:456)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.googleapis.media.MediaHttpUploader.upload(MediaHttpUploader.java:362)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:420)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:345)
06-28 06:09:12.942: W/HttpTransport(5758): at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:463)
네트워크가 URL과 연결할 수없는 경우 시간 초과 오류가 발생합니다. – PankajAndroid
예외를 잡아서 값을 반환해야합니다. – PankajAndroid
네트워크가 정상이었습니다. 나는 wifi, 4g로 테스트했고, 내 친구도 같은 문제로 네트워크에서 테스트를 마쳤습니다. 나는 예외를 잡았고, 메시지에 붙여 넣었다. 이것이 스택 추적입니다. – Nek