我尝试使用Google Sheet API v4创建新的表格。我创建成功。但是,我发现工作表正在设置,因为我是唯一可以访问的人。我的目标是允许具有URL链接的用户可以访问Java请求中的工作表。
在创建电子表格时,我尝试将google凭据设置为null,但它用于在云端硬盘中创建电子表格。因此,这是行不通的。 我浏览了它的库类和api,但是找不到与该权限有关的任何内容。
我不确定我创建电子表格的方式是否正确。这是我的代码:
map2
答案 0 :(得分:1)
正如@tehhowch所说,该权限应通过Drive API处理。这只是更新答案。
private void updateProperty(com.google.api.services.drive.Drive driveService, String fileId, String email) throws IOException {
BatchRequest batch = driveService.batch();
Permission clientPermission = new Permission();
clientPermission.setEmailAddress(email);
clientPermission.setRole("writer");
clientPermission.setType("user");
driveService.permissions().create(fileId, clientPermission)
.setFields("id")
.setSendNotificationEmail(true)
.queue(batch, new JsonBatchCallback() {
@Override
public void onSuccess(Object o, HttpHeaders responseHeaders) throws IOException {
Log.e("permissione success", String.valueOf(o));
listener.onRecvShareSpreadsheet(true);
}
@Override
public void onFailure(GoogleJsonError e, HttpHeaders responseHeaders) throws IOException {
Log.e("permissione error", e.getMessage());
listener.onRecvShareSpreadsheet(false);
}
});
batch.execute();
}