トークンを取得するために、GoogleAuthUtil.getToken(context,account, "oauth2:" +" https://www.googleapis.com/auth/drive.appdata "); を呼び出しています。
これは常にトークンを提供するので、コードは機能しますが、(少なくとも初めて) UserRecoverableAuthException を取得することを期待しているので、例外でその意図を使用してユーザーにアクションを促すことができます。この場合のアクションは、そのユーザーの Google ドライブ ストレージへのアクセスをアプリに許可することです。
Web サイトからアプリをドライブから切断し、アプリを実行すると、ファイルが gdrive に書き込まれ、Web サイトから、アプリがドライブに接続されていることがわかります。
ユーザーがアクセスを許可するように求められないのはなぜですか?