如何检测我的 Android 设备上是否收到了电子邮件/gmail?

发布于 2024-12-02 18:47:41 字数 111 浏览 0 评论 0原文

当我在 Android 设备上收到 Gmail/电子邮件时,有没有办法检测或触发事件。

基本上我希望我的应用程序在收到电子邮件通知时阅读它。

您能否告诉我是否有办法做到这一点?

Is there a way to detect or an event being triggered when i receive a gmail/email on my android device.

Basically i would like my application to read the email notification when i receive it.

Could you kindly tell me if there is way to do this ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

瀞厅☆埖开 2024-12-09 18:47:41

你需要注册一个内容观察者(不是广播接收者)

contentResolver.registerContentObserver(Uri.parse("content://gmail-ls"), true, gmailObserver); 

gmailObserver是你自己的ContentObserver对象。

每次 Gmail 中发生更改时,都会调用 ContentObserver.onChange
在这里,您可以得到所有对话,如下所示:

Cursor conversations = _contentResolver.query(Uri.parse("content://gmail-ls/conversations/" + YourEmailAddress), null, null, null, null); 

实际的对话消息将是:

Cursor messages = _contentResolver.query(Uri.parse("content://gmail-ls/conversations/" + YourEmailAddress + "/" + String.valueOf(conversationId) + "/messages"), null, null, null, null); 

You need to register a content observer (not broadcast receiver)

contentResolver.registerContentObserver(Uri.parse("content://gmail-ls"), true, gmailObserver); 

gmailObserver is your own ContentObserver object.

ContentObserver.onChange is going to be called every time something changes in Gmail.
Here you get all conversations like so:

Cursor conversations = _contentResolver.query(Uri.parse("content://gmail-ls/conversations/" + YourEmailAddress), null, null, null, null); 

And the actual conversation messages will be:

Cursor messages = _contentResolver.query(Uri.parse("content://gmail-ls/conversations/" + YourEmailAddress + "/" + String.valueOf(conversationId) + "/messages"), null, null, null, null); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文