내 Android 애플리케이션에서 Google 드라이브로 파일을 선택할 수 있습니다. 파일을 선택하면 결과가 내 응용 프로그램의 onActivityResult
으로 반환되고 DriveId
을 얻을 수 있습니다. 여태까지는 그런대로 잘됐다.DriveFile의 오픈 컨텐트가 간헐적으로 실패하는 이유는 무엇입니까?
이 파일을 열려고 시도 할 때 가끔 작동하고 때로는 않습니다. 즉, contentsResult.getStatus().isSuccess()
은 때로는 사실이며 때로는 거짓입니다.
getStatus()
에는 실패한 이유를 나타내는 내용이 없으며 보류중인 해결 방법이 없습니다.
Android logcat을 보면이 메시지가 문제와 관련되어있는 것 같습니다. 내 앱이 아닙니다.
E/FileDownloader﹕ Error downloading: EntrySpec[769]
java.io.IOException: Unexpected response code: 403
at com.google.android.gms.drive.metadata.sync.syncadapter.a.f.a(SourceFile:232)
at com.google.android.gms.drive.metadata.sync.syncadapter.a.f.a(SourceFile:69)
at com.google.android.gms.drive.metadata.sync.syncadapter.a.g.run(SourceFile:344)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:811)
문제가 있습니다. 일부 파일은 열리고 그렇지 않은 파일도 있습니다.
내가 열어 본 파일과 관련이 없습니다. 응용 프로그램을 다시 시작하면 동일한 오류 파일이 작동하기 시작하고 다른 파일은 실패합니다. 또한 API 콘솔에 들어갔고이 API의 할당량을 100 요청/초/초로 늘 렸습니다.
지금 여기에 내가 파일을 열려고 시도하는 방법이다, 문제를 보완하기 위해 : API 호출을하는 동안 당신은 속도 제한 오류를 타격 한 것 같은 설명에서DriveFile file = Drive.DriveApi.getFile(mGoogleApiClient, driveId);
file.openContents(mGoogleApiClient,DriveFile.MODE_READ_ONLY,null)
.setResultCallback(new ResultCallback<DriveApi.ContentsResult>() {
@Override
public void onResult(DriveApi.ContentsResult contentsResult) {
if (!contentsResult.getStatus().isSuccess()) {
Log.w(TAG, "Could not open Google Drive file");
if (contentsResult.getStatus().getResolution() != null) {
//There is never a resolution
}
return;
}
}
...
상태 코드 및 메시지 란 무엇입니까? –
간단히 말해서 : '예상치 못한 응답 코드 : 403' (위 게시물의 첫 번째 오류 블록). 내 응용 프로그램의 로그에 나타나지 않으므로 그 이상의 내용은 볼 수 없습니다. – Mendhak
나에게도 같은 오류가 발생했습니다 ... – Arnaud