如何在 Android 设备上接收新 Outlook 电子邮件的推送通知?

Posted

技术标签:

【中文标题】如何在 Android 设备上接收新 Outlook 电子邮件的推送通知?【英文标题】:How do I receive push notifications of new Outlook emails to an Android device? 【发布时间】:2019-05-12 06:02:45 【问题描述】:

我正在制作一个 android 应用程序,我希望用户在其收件箱中收到电子邮件时登录其 Outlook 帐户并从 Microsoft Graph API 接收到应用程序的推送通知。我怎样才能做到这一点?

我可以使用 HTTP 订阅请求(此处指定 https://docs.microsoft.com/en-us/graph/webhooks?view=graph-rest-1.0)订阅收件箱更改,例如:

POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json

  "changeType": "updated",
  "notificationUrl": 
  "https://webhook.azurewebsites.net/notificationClient",
  "resource": "/me/mailfolders('inbox')/messages",
  "expirationDateTime": "2016-03-20T11:00:00.0000000Z",
  "clientState": "SecretClientState"

在此请求中,我需要指定通知更新发送到的“notificationUrl” - 我该如何设置? Azure 上是否有此功能?

从那里我相信我可以使用此处的说明将推送通知发送到 Android 设备https://docs.microsoft.com/en-us/azure/notification-hubs/notification-hubs-android-push-notification-google-fcm-get-started。

这涉及在 Azure 上设置一个通知中心,该中心连接到 Firebase,然后向应用发送通知。这是最好/唯一的方法吗?

非常感谢任何帮助!

【问题讨论】:

如果我的回答有帮助,请通过单击您问题的复选框旁边将其标记为答案。谢谢 【参考方案1】:

notificationUrl 可以是 azure 函数应用的 webhook url。 https://azure.microsoft.com/en-us/resources/videos/create-a-web-hook-or-api-azure-function/.

因此,您可以使用 azure 函数调用 Firebase API 来发送通知。

请参阅https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-notification-hubs#packages---functions-1x 和https://firebase.google.com/docs/cloud-messaging/migrate-v1。

此外,我建议您使用 azure logic app。它具有内置连接器,可在邮件到达您的收件箱时使用。

看看这里https://docs.microsoft.com/en-us/azure/connectors/connectors-create-api-office365-outlook。

【讨论】:

以上是关于如何在 Android 设备上接收新 Outlook 电子邮件的推送通知?的主要内容,如果未能解决你的问题,请参考以下文章

多个设备令牌目标指向 AWS SNS 中的单个 Android 设备

为啥我无法在 Android 设备上接收来自 GCM 的消息

如何在 Android Studio 上更改布局预览默认设备

如何通过 Android 设备创建的 WiFi 直接网络在 iOS 中使用 ZeroMQ 发送/接收消息

设备如何接收 Android GCM 推送通知?

如何检测何时在 Android 中设置了新警报