以编程方式从Google+检索我的所有活动



我试图编写一个程序来从Google+检索我的所有活动。我研究了谷歌提供的示例代码,并像这样编写了我的程序:

// Fetch the available activities
Plus.Activities.List listActivities = plus.activities().list("me", "public");
listActivities.setMaxResults(20L);
ActivityFeed feed;
try {
  feed = listActivities.execute();
} catch (HttpResponseException e) {
  log.severe(Util.extractError(e));
  throw e;
}
// Keep track of the page number in case we're listing activities
// for a user with thousands of activities. We'll limit ourselves
// to 5 pages
int currentPageNumber = 0;
String token = "";
while (token != null && feed != null && feed.getItems() != null && currentPageNumber < 5) {
  currentPageNumber++;
  System.out.println();
  System.out.println("~~~~~~~~~~~~~~~~~~ page "+currentPageNumber+" of activities ~~~~~~~~~~~~~~~~~~");
  System.out.println();
  for (Activity activity : feed.getItems()) {
    show(activity);
    System.out.println();
    System.out.println("------------------------------------------------------");
    System.out.println();
  }
  // Fetch the next page
  token = feed.getNextPageToken();
  System.out.println("next token: " + token);
  listActivities.setPageToken(token);
  feed = listActivities.execute();
} 

问题是这只允许我检索我的"公共"活动。我也有一些私人活动,这个程序没有得到它们。该问题与

plus.activities().list("me", "public");

此列表函数需要一个输入参数,即要列出的活动的集合。在这里,它是"公共的"。我想检索所有活动,而不仅仅是公共活动。但基于

https://developers.google.com/+/api/latest/activities/list

要列出的此活动集合的唯一可用输入是"公共"。所以我的问题是:

  1. 是否可以以编程方式从 Google+ 检索我的所有活动记录(公开和非公开活动记录)?
  2. 如果可能的话,我该如何使用Java来做到这一点?

多谢!

官方 Google+ API 仅提供对公共数据的只读访问权限。因此,您只能使用"公共"作为活动的集合。

通过授权,您只会获得这两个作用域。

- 知道你在谷歌上是谁https://www.googleapis.com/auth/plus.me

-查看您的电子邮件地址https://www.googleapis.com/auth/userinfo.email

如您所见,它不会开放对非公共活动的访问。

API 页面说,

可接受的"集合"值为:"public" - 指定用户创建的所有公共活动。

参考:Google+ API 页面。 无法在此处链接到它。

相关内容

  • 没有找到相关文章

最新更新