アプリケーションがユーザーに、アプリケーションが GoogleAuthUtil.getToken() を介してユーザー データにアクセスすることに同意するよう求めるウィンドウを起動しようとしています。
ただし、UserRecoverableAuthException から起動されたアクティビティを確認できません。
検索しましたが、この問題を解決する役立つ投稿は見つかりませんでした。
誰にもアイデアはありますか?(「Shoot2!」が出力されますが、その後 LogCat では何も起こりません)。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
System.out.println("HERE!!!");
System.out.println(CalendarScopes.CALENDAR);
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
try {
System.out.println("Hello2!");
String token = GoogleAuthUtil.getToken(EventsActivity.this, "jdoe@gmail.com", "oauth2:" + CalendarScopes.CALENDAR);
System.out.println("token");
System.out.println("Hello3!");
} catch (GooglePlayServicesAvailabilityException playEx) {
System.out.println("Shoot1!");
playEx.printStackTrace();
} catch (UserRecoverableAuthException recoverableException) {
System.out.println("Shoot2!");
Intent recoveryIntent = recoverableException.getIntent();
recoveryIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK).addFlags(Intent.FLAG_FROM_BACKGROUND);
// Use the intent in a custom dialog or just startActivityForResult.
startActivityForResult(recoveryIntent, 99);
} catch (GoogleAuthException authEx) {
System.out.println("Shoot3!");
// This is likely unrecoverable.
authEx.printStackTrace();
} catch (IOException ioEx) {
System.out.println("Shoot4!");
ioEx.printStackTrace();
}
return null;
}
}.execute();