我使用AccountManager获取访问令牌以授权对Google云端硬盘的调用。运行这行代码时:
mgr.blockingGetAuthToken(account, ApiConst.DRIVE_AUTH_SCOPE, true);
用户获得许可请求的通知。是否可以从应用程序中显示此信息并让用户接受权限?我知道如果使用Google Play服务,我可以捕获异常并提取使用意图:
try {
return GoogleAuthUtil.getToken(mActivity, mEmail, mScope);
} catch (UserRecoverableAuthException userRecoverableException) {
mActivity.startActivityForResult(userRecoverableException.getIntent(), mRequestCode);
}
使用AccountManager时是否有类似的方法来实现此目的?
答案 0 :(得分:2)
解决了它。如果我使用此方法,将要求用户接受权限而不是收到通知:
am.getAuthToken (
account.account,
ApiConst.DRIVE_AUTH_SCOPE,
options,
this,
new OnTokenAcquired(),
null);
OnTokenAcquired是一个实现AccountManagerCallback的类。在其run方法中,您将获得令牌。