说明:
所以我使用accountManager
来获取我需要的令牌:
am.getAuthToken(account,
scope,
null,
this,
new OnTokenAcquired(),
new Handler(new OnError()));
当我使用“查看您的任务”作为范围时(就像它描述的那样here)Android会显示一个权限请求并告诉我的应用程序要求“查看您的任务” ”
但我需要使用“ oauth2:https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile ”作为范围。当我这样做时,Android 不将这些网址替换为我找到的人类可读描述here。
问题:
scope
替换为Google定义的自定义说明或说明?permission
并在manifest
中使用它,以便Android会要求用户许可(例如“查看您的电子邮件地址”和“查看有关您帐户的基本信息” )在安装过程中?我想要实现的目标:
我只是想请求我需要的权限,以便用户能够了解我要求的权限类型。
感谢。
答案 0 :(得分:0)
无论如何都要强制Android用自定义替换范围 由Google定义的描述或描述?
不可以使用自定义说明。当您在低于4的Android版本上使用Oauth2范围时(我认为,我不确定3),确切的范围将显示给用户而不是更友好的用户。在Android 4及更新版本中,您将获得描述,因此此描述似乎是Android本身的一部分。
Is there any way achieve what I'm trying to achieve?
您可以尝试使用Google Play的GoogleAuthUtil代替帐户管理器,因为它可以提供更好的用户体验。有关使用客户经理和GoogleAuthUtil的比较,请参阅:In a nutshell what's the difference from using OAuth2 request getAuthToken and getToken