【问题标题】:How to Send Push Notification to Xamarin Android app?如何向 Xamarin Android 应用程序发送推送通知?
【发布时间】:2019-06-10 03:56:28
【问题描述】:

我需要使用Xamarin 向我们的Android App 实施推送通知。这是过程。我们有经理使用的网络版本。经理创建并分配工作给司机。应用程序版本由驱动程序使用,它显示作业列表和作业进程,直到完成。因此,当 Manager 将 Job 分配给 Web 版本的 Driver 时,它会通知 App 版本的 Driver “分配了新作业”。基本上,Web 和应用程序都使用相同的数据库,然后我们创建了一个 api(REST API in MVC C#) 来连接并从数据库中获取数据以用于移动应用程序。

有人可以向我推荐我应该使用哪个推送通知插件(插件或 nuget)来执行此操作吗?目前,我已经通过App center & Firebase 设置了推送通知,但不确定它是如何工作的。

谢谢。

【问题讨论】:

  • 但我需要推送的数据来自我们的服务器,而不是来自 Firebase。有没有办法可以将我们的数据推送到 Firebase 数据库?
  • 你好@Jen143 我建议你查看firebase cloud messaging API,如果你愿意,我可以给你一个详细的答案
  • @Jen143 ? “Firebase”是一个伞形品牌,其中一个组件是 FCM(Fire Cloud Messaging),您可以将数据(和/或通知)嵌入到消息中并将其发送到设备。您不必使用 Firebase DB 即可使用 FCM
  • @G.hakim 你能帮我一个详细的答案吗?谢谢

标签: api asp.net-mvc-4 xamarin push-notification xamarin.android


【解决方案1】:

我需要使用 Xamarin 向我们的 Android 应用程序实现推送通知。

  • 我建议您将Firebase 用于Android 的移动推送通知,因为它是Google 的产品,专为移动应用而设计。对于推送通知,您将使用 Firebase Cloud Messaging 也称为 FCM。在开始编写任何代码之前,请确保您精通它的工作原理,阅读它自己回答您大部分问题的文档。

经理创建工作并将其分配给驱动程序。应用程序版本由驱动程序使用,它显示作业列表和作业的进程,直到完成。因此,当 Manager 将 Job 分配给 Web 版本的 Driver 时,它会通知 App 版本的 Driver “分配了新作业”。基本上,Web 和应用程序都使用相同的数据库,然后我们创建了一个 API(MVC C# 中的 REST API)来连接并从数据库中获取数据以用于移动应用程序。

  • 为此,您必须检查如何使用Firebase using Rest-API。一旦您配置了 Rest-API,然后将您的业务逻辑应用到它上面,事情就会比您想象的要容易得多。

有人可以向我推荐我应该使用哪个推送通知插件(插件或 NuGet)来执行此操作吗?

  • 我的建议很简单,不要使用任何类型的 Firebase 推送通知插件!我在插件方面的经历非常糟糕,从那时起,我从不推荐其他开发人员使用插件,直到插件维护良好。我宁愿要求您根据在线提供的指南简单地配置 Firebase。像下面的Xamarin.Android guide for FCM。它详细包含您正在寻找的所有内容,我还建议您在 SO 上查看与 firebase 相关的答案,您会发现几乎所有文档中没有的内容都在此处详细介绍。如下所示:

How to handle Firebase Notification i.e. Notification Messages and Data Messages

Push Notification in android with firebase get token

How to send device to device messages using Firebase Cloud Messaging?

Receive push notifications on one android app from two Firebase projects

【讨论】:

  • 我已向此发送数据:fcm.googleapis.com/fcm/send 提供了 appID 和 senderId,然后收到响应:{"message_id":8429804111230173352} 但是我在 Firebase 的通知选项卡中的云消息传递中看不到消息并且在应用程序中也没有收到消息。
  • 你到底是怎么做的,你使用的是 web-api 吗?
  • 是的。网络 API。当用户对网络进行更改时,它将向应用发送通知
  • 好的,您的移动应用程序没有收到它,在这种情况下,您的 OnMessageReceived 方法是否受到影响?
  • 我想知道为什么我无法从 Firebase 中的 Cloud Messaging 仪表板中看到它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-04
相关资源
最近更新 更多