首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有GET_ACCOUNTS权限的谷歌云端点+安卓系统中的GoogleApiClient

没有GET_ACCOUNTS权限的谷歌云端点+安卓系统中的GoogleApiClient
EN

Stack Overflow用户
提问于 2016-03-28 06:06:58
回答 1查看 205关注 0票数 2

有没有办法在不强制拥有GET_ACCOUNTS权限的情况下,使用GoogleApiClient对安卓应用中的谷歌端点进行身份验证?

然后,具有新的运行时权限的Android 23+将要求用户提供不需要的READ_CONTACTS权限。奇怪的是,所有带有谷歌端点的安卓应用程序现在都需要READ_CONTACTS权限。

我能找到的最接近的StackOverflow问题是this,但它声称它可能只在非常有限的时间内工作。这个Google post提供了一些使用令牌的指导,但不是针对端点的。

EN

回答 1

Stack Overflow用户

发布于 2018-11-25 22:50:44

我终于找到了解决方案。我更新了答案on the question you mentioned

要避免1小时令牌限制,请在每次呼叫端点之前使用GoogleSignInApi.silentSignIn()获取新令牌。例如,如果您不在UI线程中:

代码语言:javascript
复制
GoogleSignInOptions options = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN).requestEmail()
                .requestIdToken(CLIENT_ID)
                .build();
GoogleSignInClient client = GoogleSignIn.getClient(context, options);
GoogleSignInAccount user = Tasks.await(getGoogleSignInClient(context).silentSignIn());

// Use the new user token as before 
GoogleCredential credential = new GoogleCredential.Builder().setTransport(new NetHttpTransport())
        .setJsonFactory(JacksonFactory.getDefaultInstance())
        .build();
credential.setAccessToken(user.getIdToken());
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36253242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档