xamarin.forms 中的推送通知

Posted

技术标签:

【中文标题】xamarin.forms 中的推送通知【英文标题】:Push notification in xamarin.forms 【发布时间】:2020-01-02 11:45:24 【问题描述】:

我问这个问题是为了澄清有关 xamarin 中的推送通知。我有一个 xamarin.forms 应用程序,它将在列表视图中显示某些项目。我的应用程序的后端位于 .Net 中。在应用程序内的列表视图中显示的项目是从后端添加的。我想要实现的是每当项目添加到后端时,我想在我的应用程序中接收通知。

对于通知部分,我找到了两个选项。

    FirebasePlugin Link Azure 推送通知

我需要澄清一下

    我应该走哪条路?有没有其他成本有效的方法可以跨平台方式(Xamarin.forms)在 iosandroid 中实现推送通知? 要在 ios 中实现推送通知,APN 证书是强制性的吗?目前我没有苹果开发者帐户。所以在 ios 中测试通知似乎很困难。 感谢您提供任何帮助或指导

【问题讨论】:

您好,如果回答对您有帮助,记得有空时标记一下:) @JuniorJiang-MSFT 嗨,我现在有点困惑。一个答案建议使用 firebase,另一个建议使用应用中心。 好吧,这取决于你。您可以与您的团队成员讨论决定选择哪一个。 【参考方案1】:
    我应该走哪条路?有没有其他成本有效的方法可以跨平台方式(Xamarin.forms)在 ios 和 android 中实现推送通知?

根据我的经验,对我来说最简单的方法是使用 firebase 控制台来管理 Android 和 iOS 的通知。我有类似的平台,当某些用户更新 webapp 数据库时,它使用推送通知给用户。令我失望的是,Azure Push 管理起来更加复杂。

    要在 ios 中实现推送通知,APN 证书是强制性的吗?目前我没有苹果开发者帐户。所以在 ios 中测试通知似乎很困难。感谢您提供任何帮助或指导

是的。 Apple 开发者帐户是强制性的。此外,您无法在 iOS 模拟器上测试您的推送通知。您必须使用物理设备。

【讨论】:

您好,感谢您的回复。对于firebase通知,除了提到的插件之外,还有其他跨平台方式吗? 我前段时间绑定了这个插件,它已经过时了。我没有使用它。我已经为 Android 和 iOS 实现了自己的方法 - 使用 MS 和 Google 提供的库非常容易。如果您正在开发业务应用程序,我想说不要过多地使用第三方插件。 好的,你能分享一些关于如何在 ios 和 android 上实现 firebase 通知的想法。像一些链接等。这将非常有帮助 对于 iOS:nuget.org/packages/Xamarin.Firebase.iOS.CloudMessaging/…,对于 Android nuget.org/packages/Xamarin.Firebase.Messaging/…【参考方案2】:

App Center Push 是我现在开始使用的。推送服务是免费的(很棒),他们有 Xamarin SDKs 处理大部分平台特定的配置,所以推送工作真的很快。

正如另一个答案所述,您仍然需要一个苹果开发者帐户和物理设备才能在 iOS 上进行测试。

它是 Microsoft App Center 产品的一部分,它为移动开发提供许多其他有用的服务。

【讨论】:

那么app center比azure好吗?我想要一个减少平台特定配置的解决方案。应用中心是否有类似 azure 的定价? 我可以在我的后端 .net 项目上配置应用中心吗?' 这取决于您的用例是什么。 App Center 定价是按月订阅,但有一个涵盖推送的免费套餐。 App Center Push 是您后端的一部分,如果您需要从后端调用 Push,您可以使用 push rest API - docs.microsoft.com/en-us/appcenter/push/rest-api【参考方案3】:

@groveale App Center Push 功能即将停用 (https://docs.microsoft.com/en-us/appcenter/push/),因此我建议使用 firebase 或 xamarin docs 提供的实现。

【讨论】:

以上是关于xamarin.forms 中的推送通知的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin.Forms Android 推送通知不出现

Xamarin.Forms - 适用于 iOS 和 Android 的推送通知

Xamarin.Forms Android推送通知不会出现

xamarin Forms Azure 通知中心

关闭应用程序时未收到 Xamarin Forms Android 推送通知

xamarin forms win phone 8.1 后台任务推送通知未注册