GoogleAccountCredential

GoogleAccountCredential

让我们列出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项目的所有者

07-27 13:20