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 分のタイムアウトを待ちたくない場合、ユーザーの要求に応じてキャンセルする正しい方法は何ですか?