如何在Android中通过联系人(电子邮件id)获得gmail消息的数量,API调用的最小数量



在API调用次数最少的情况下,在android中通过带有时间戳的联系人/emailId获取消息的最佳方式是什么?

您可以列出发送到特定电子邮件地址的邮件:

请求

q = to:example@gmail.com OR from:example@gmail.com
GET https://www.googleapis.com/gmail/v1/users/me/messages?q=To%3Aexample%40gmail.com+OR+from%3Aexample%40gmail.com&access_token={YOUR_API_KEY}

响应

{
 "messages": [
  {
   "id": "1516c4a48a1d6ec9",
   "threadId": "1516c3bc5769405d"
  },
  {
   "id": "1516c46d828b2470",
   "threadId": "1516c3bc5769405d"
  }, ...
 ],
 "resultSizeEstimate": 6
}

然后,你必须单独获取这些消息,只需询问时间戳,如果这就是你所需要的(这可以作为一个单独的http-request和一个batch-request来完成,但仍然会从API配额中获得同样多的分数)

请求

fields = internalDate
GET https://www.googleapis.com/gmail/v1/users/me/messages/1516c4a48a1d6ec9?fields=internalDate&access_token={YOUR_API_KEY}

响应

{
 "internalDate": "1449220786000"
}

internalDate表示消息存储在Google的时间,单位为自epoch以来的毫秒。

最新更新