让我们列出Google云端硬盘中的文件:
GoogleAccountCredential credential = GoogleAccountCredential.usingOAuth2(
context, DriveScopes.DRIVE);
Drive service = new Drive.Builder(AndroidHttp.newCompatibleTransport(),
new GsonFactory(), credential).build();
service.files().list().execute();
但是,例如,如果没有可用的网络连接,execute()几乎要花很长时间才能实现。
从GoogleAccountCredential的来源可以看出,它使用的是ExponentialBackOffPolicy,默认情况下,它的最长使用时间限制为15分钟。
问题1:是否有方法可以覆盖此行为并将超时限制设置为较低的值?
问题2:service.files()。list()。execute()在AsyncTask中运行。如果她不想等待15分钟的超时,应用户要求取消它的正确方法是什么?
最佳答案
感谢您的反馈!
看起来没有任何方法可以自定义GoogleAccountCredential上的指数补偿策略。我在这里提出了功能请求:
https://code.google.com/p/google-api-java-client/issues/detail?id=734
看起来也没有取消的好方法。功能请求在此处提交:
https://code.google.com/p/google-api-java-client/issues/detail?id=735
注意:我是google-api-java-client项目的所有者