Mat*_*nič 9 android google-login google-plus google-play-services
这是从Google+登录中使用的GoogleApiClient获取令牌的传统方式:
String token = GoogleAuthUtil.getToken(apiClient.getContext(), getAccountNameFromGoogle(apiClient), SCOPE);
Run Code Online (Sandbox Code Playgroud)
但是,GetAccountNameFromGoogle
方法需要android.permission.GET_ACCOUNTS
权限,并且在Android M开发人员预览版3中,此权限现在标记为危险并分组为联系人组.这意味着,如果有人想登录我的应用程序,他需要授予我的应用程序完整的联系人权限,这有点矫枉过正.
有没有办法在GET_ACCOUNTS
未经许可的情况下实现这一目标
我找到的一个可能的答案是从AccountPicker获取帐户名称,但这迫使用户选择他的帐户两次(一次用于Google Plus身份验证,一次用于AccountPicker),这也不是非常友好的解决方案.
所以这就是我最终解决它的方法:
我GoogleApiClient
完全放弃并切换到AccountPicker。它并不完美,但我仍然可以使用 的所有功能GoogleApiClient
,尽管不是那么轻松。
谷歌对此的指南:https ://developers.google.com/android/guides/http-auth
归档时间: |
|
查看次数: |
1278 次 |
最近记录: |