【发布时间】:2019-06-18 12:30:00
【问题描述】:
下午好,
我提前道歉,因为我知道这是主观的。但是,我非常喜欢 Xamarin 专家的意见。
我正在使用面向 Android 和 iOS 设备的 Xamarin 为客户端构建移动应用程序。我们有一个由 MVC Web 应用程序(托管在 Azure 中)使用的 .NET Web API 后端应用程序,现在是我们的 Xamarin 应用程序。当某些事情发生时,我们的 API 需要发送基本的推送通知(到 iOS 和 Android)。
我过去配置过推送通知(也针对 Xamarin 项目),但已经有几年了。该配置包括 Azure 通知中心和 GCM(GCM 部分最近更新到 Firebase - 仍与 Azure 通知中心结合使用)。所有这些都运行良好。
再次查看推送通知后,Firebase 似乎已成为通知中心,同时处理 iOS 和 Android 应用程序。有大量关于以各种方式设置推送通知的文档,仅使用适用于 iOS 和 Android 的 Firebase、将 Firebase 与 Azure 一起使用、仅使用适用于 iOS 的 Azure 等。
所以,我的问题是.. 如果您是一位经验丰富的 Xamarin 开发人员,正在使用 .NET 后端创建新的 iOS 和 Android 目标应用程序,您会使用 Azure 通知中心吗?根据我的阅读,似乎最简单的方法是将 Firebase 用于 iOS 和 Android,省去 Azure 通知中心部分,并使用我们的后端向 Google API 发出单个 POST 请求(即https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send 基于他们在https://firebase.google.com/docs/cloud-messaging/send-message 的文档)发送新的推送通知。
但是,考虑到 Microsoft 支持 Xamarin 和 Azure,这对我来说并不是很好。我的直觉告诉我应该使用 Azure 通知中心。有人可以提供一些指导吗?我觉得我不理解一些阻碍我自己得出好结论的东西。
谢谢,
钱德勒
【问题讨论】:
-
如果您的目标不是 Windows (MPNS/WNS),那么 FCM 会通过 Apple APNs 网关直接处理 Android 和 iOS/macOS,因此不需要 ANH(在技术基础上)。以我的经验,它实际上归结为一个通用的基础设施堆栈和公司政治,在较小程度上是谷歌或微软试图向你推销的高级活动/本地化等功能。如果您已经在使用 Azure 来满足您的其他移动后端需求,那么 ANH 是有意义的,因为它是一个计费/支持/知识/学习点……我的客户在服务之间分配了大约 50/50……跨度>
-
您可以将答案标记为已接受,然后可以关闭此问题。谢谢。 ^.^
标签: firebase xamarin push-notification azure-notificationhub