0

我想为 Google Documents List API 创建一个 Android 客户端应用程序,考虑到它可能会在不久的将来被 Google Drive API 取代。因此,我使用 google-api-java-client 实现了身份验证,这可能会在需要时简化向新 API 的过渡。

现在我正在尝试扩展在 Google 提供的 shared-sample-docs 项目中找到的DocsClient.java类,以便能够与用户联系人共享文档。

我发现没有比@yanivinbar 编写的以下介绍更好的信息了:http: //javadoc.google-api-java-client.googlecode.com/hg/1.4.1-beta/com/google/api/client /googleapis/xml/atom/package-summary.html

从 Google Documents List API 文档中,我发现 ACL 用于让其他用户访问特定文档。但是,我不清楚应该实施哪些方法来实现此或其他常见的 API 相关事务。

4

1 回答 1

0

没错,您需要为您的文档条目添加 ACL 条目。您可以使用以下方法:

public void shareFile(DocumentListEntry documentListEntry,
        AclScope.Type type, String value, String role)
        throws MalformedURLException, IOException, ServiceException {

    // Instantiate a AclEntry object to update sharing permissions.
    AclEntry acl = new AclEntry();

    // Set the ACL scope.
    acl.setScope(new AclScope(type, value));

    // Set the ACL role.
    acl.setRole(new AclRole(role));

    // Insert the new role into the ACL feed.
    service.insert(new URL(documentListEntry.getAclFeedLink().getHref()), acl);             
}

这里的service是 com.google.gdata.client.docs.DocsService 的一个对象。您还可以在文档上指定不同的共享类型角色。

对上述方法的可能调用可以是

shareFile(entryObj,AclScope.Type.USER,"your email id",AclRole.OWNER);
shareFile(entryObj,AclScope.Type.DOMAIN,"domain name",AclRole.READER);
于 2012-06-02T11:17:48.960 回答