0

直接来自Google Developers Api for Java

GoogleCredential credential = new GoogleCredential.Builder().setTransport(HTTP_TRANSPORT)
            .setJsonFactory(JSON_FACTORY)
            .setServiceAccountId("[[INSERT SERVICE ACCOUNT EMAIL HERE]]")
            .setServiceAccountScopes(PlusScopes.PLUS_ME)
            .setServiceAccountPrivateKeyFromP12File(new File("key.p12"))
            // .setServiceAccountUser("user@example.com")
            .build();
        // set up global Plus instance
        plus = Plus.builder(HTTP_TRANSPORT, JSON_FACTORY)
            .setApplicationName("Google-PlusServiceAccountSample/1.0")
            .setHttpRequestInitializer(credential).build();

现在我想知道有什么不同

服务帐户范围

我们可以使用??

在这里,它使用PlusScopes.PLUS_ME,有些地方使用AnalyticsScopes.ANALYTICS_READONLY

我真的对这些范围一无所知。

此外,当我尝试在我的 analytics-cmline-sample 项目中使用 *AnalyticsScopes.ANALYTICS_READONLY*

它不允许我这样做。在我提供字符串时说它接受列表。有谁知道这个ServiceAccountScopes是关于什么的?

4

1 回答 1

0

您的第二个问题的答案是您应该将范围放在数组列表中,如下所示:

GoogleAccountCredential.usingOAuth2(this,Arrays.asList(AnalyticsScopes.ANALYTICS_READONLY));

于 2013-10-07T19:52:39.287 回答