尝试将日历快速入门 API 实现到 Android 中,但是当我声明令牌时,如图所示。private final String TOKENS_DIRECTORY_PATH = "tokens";
然后在构建器中使用该字符串
GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(
HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES)
.setDataStoreFactory(new FileDataStoreFactory(new java.io.File(TOKENS_DIRECTORY_PATH)))
.setAccessType("offline")
.build();
但是Android在设置时返回此错误DataStoreFactory
java.io.IOException: unable to create directory: /tokens
是否有其他方法来创建有效的目录?或者我必须更改文件路径TOKENS_DIRECTORY_PATH
?
我用了这段代码。
File tokenFolder = new File(Environment.getExternalStorageDirectory() +
File.separator + TOKENS_DIRECTORY_PATH);
if (!tokenFolder.exists()) {
tokenFolder.mkdirs();
}
flow = new GoogleAuthorizationCodeFlow.Builder(
HTTP_TRANSPORT, JSON_FACTORY, clientSecrets, SCOPES)
.setDataStoreFactory(new FileDataStoreFactory(tokenFolder))
.setAccessType("offline")
.build();
并在Android清单文件中获取外部存储的权限
EDIT:Google API 文档中为 Java 指定的方法似乎不适用于 Android。用这个github项目作为将 Google API 集成到 Android 应用程序中的指南。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)