gpt4 book ai didi

Android 授权 google drive api

转载 作者:行者123 更新时间:2023-11-29 17:31:19 24 4
gpt4 key购买 nike

我希望能够从用户的 Google 云端硬盘帐户上传和下载。

上传下载正常,问题是账号授权问题。

到目前为止,我一直在使用 android 调试 keystore 来构建实际的下载和上传类,但是当我想切换到我自己的应用程序时,它停止工作了。

我在 Google Drive 控制台中启用了 Drive API,并下载了 client_secret.json 文件并将其放在 Assets 文件夹中。不知道怎么授权使用。

那么基本上如何授权一个帐户在android中使用谷歌驱动器API。请注意,我的 DriveScope 是 DRIVE,表示完全控制给定的 Google 云端硬盘帐户。

这是我用来访问谷歌驱动器文件的代码。我遵循了此链接上的教程:https://developers.google.com/drive/web/quickstart/android

googleAccountCredential = GoogleAccountCredential.usingOAuth2(
getActivity().getApplicationContext(), Arrays.asList(SCOPES))
.setBackOff(new ExponentialBackOff())
.setSelectedAccountName(getArguments().getString("account"));

driveService = new Drive.Builder(
transport, jsonFactory, googleAccountCredential)
.setApplicationName("myAPP")
.build();

最佳答案

很可能只是您的授权项不匹配。对于 Android 应用程序,授权包括 2 essential items在你的 developers console 中必须是有序的(天哪,他们又重新洗牌了!!!)。您不需要“client_secret.json”。

  1. APIs & auth -> Credentials -> Credentials -> Android client 1 'SHA1' MUST BE IN SYNC with your 'Pakage name'
  2. APIs & auth -> Credentials -> OAuth consent screen 必须有你的“产品名称”和“电子邮件地址”

我猜测,通过切换到应用的“发布”版本,您生成的“程序包名称”/“SHA1”与开发人员控制台不同步(您的 IDE 指向不同的 keystore ,从而拉出不正确的 SHA1)。

这是我遇到麻烦时使用的“最后一招”检查。

  1. 找到无法运行的 APK。在解压器​​ (7-zip) 中打开“*.apk”文件,然后在存档中找到“META-INF\CERT.RSA”文件。将其解压缩到您的桌面
  2. 运行“keytool -printcert -file .\desktop\CERT.RSA”。
  3. 您应该会看到 APK 文件的“SHA1”。将其与开发控制台中的“SHA1”进行比较。还要检查包名称(它在您的 list 中)。 “程序包名称”/“SHA1”对是授权 Google 云端硬盘中应用版本的内容。

祝你好运

关于Android 授权 google drive api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32834901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com