我正在研究在Google的私人应用数据文件夹中创建/更新单个文本文件的应用。这是通过REST v3 Drive API完成的。 几天前它工作得很好,现在它没有。据我所知,唯一改变的是我将其上传到Google Play。我的 在我的应用程序连接到应用程序时遇到问题,因为'service'变量返回null。我的想法是,也许我需要刷新令牌或其他东西,但是我一直无法找到关于如何使用v3 API来做到的任何事情。 我非常感谢这方面的帮助。Google Drive Android API身份验证问题
这里是我试过到目前为止:
1.创建一个新的密钥库,并重新下载谷歌与services.json文件与新的SHA1指纹
2.禁用和重新启用驱动器API
3.我发展我的“释放”变种,可能是坏的项目,但它之前
4.工作敲我的头撞在墙上
这里的源代码:
// Gather credentials
credential = GoogleAccountCredential.usingOAuth2(getApplicationContext(), Arrays.asList(SCOPES)).setBackOff(new ExponentialBackOff());
SharedPreferences settings = getSharedPreferences("Roblu", Context.MODE_PRIVATE);
String accountName = settings.getString("accountName", "");
credential.setSelectedAccountName(accountName);
// Start Google services
HttpTransport transport = AndroidHttp.newCompatibleTransport();
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance();
// This is returning null
service = new Drive.Builder(transport, jsonFactory, credential).setApplicationName("Roblu").build();
client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
编辑
此行对'Drive'对象返回null。想法?
service = new com.google.api.services.drive.Drive.Builder(transport, jsonFactory, credential).setApplicationName("Roblu").build();
SHA1指纹是否来自您用于签署已发布应用程序的相同密钥库? –
没有.....我的应用程序在不同的密钥存储下发布,但我使用不同的密钥存储在adb上运行应用程序 - 这是一个问题吗? @ X-码 – wdavies973