SQL 服务器推送通知到 Xamarin Forms
SQL Server Push Notifications to Xamarin Forms
我正在使用 SQL Server 作为后端数据库开发 Xamarin Forms 应用程序,我有一个要求,即当一个用户插入数据时,另一个用户会收到此数据作为通知。
请注意,应用程序直接连接到数据库,没有 Web 服务或任何其他层。
谁能告诉我如何实现这个功能?
提前致谢。
首先,我强烈反对 Xamarin.Forms 应用程序(或任何移动应用程序)直接连接到数据库。写一个 API 来为您处理。
不过,要回答您的问题,您需要向推送通知提供商注册该应用程序。在 Android,本机提供程序是 Firebase。在 iOS,本机提供程序是 Apple 推送通知服务 - 或简称 APNS。但是,您也可以通过 Google 提供的包将 Firebase 用于 iOS - Microsoft 已经为其发布了 Xamarin 绑定。
这是一个非常好的视频,展示了如何做到这一点 (https://www.youtube.com/watch?v=GNBuaAB8nR8),它是最新的(2021 年上传),并且在撰写本文时,这个人在微软工作。
实施后,您将需要一些方法将消息从数据库推送到 Firebase。我的建议是一个简单的 API。然后,Firebase 将处理以推送通知的形式将该数据推送到您的应用程序。您可以在此处阅读有关 Firebase 通知消息架构的信息:https://firebase.google.com/docs/cloud-messaging/concept-options
只是为了 re-iterate 我在顶部所说的。我强烈建议您不要直接从移动应用程序连接到数据库。除了这样做的许多安全隐患外,如果您需要扩大应用程序的规模,您将面临许多设计挑战。
已编辑:修正了一个拼写错误。
我正在使用 SQL Server 作为后端数据库开发 Xamarin Forms 应用程序,我有一个要求,即当一个用户插入数据时,另一个用户会收到此数据作为通知。
请注意,应用程序直接连接到数据库,没有 Web 服务或任何其他层。
谁能告诉我如何实现这个功能?
提前致谢。
首先,我强烈反对 Xamarin.Forms 应用程序(或任何移动应用程序)直接连接到数据库。写一个 API 来为您处理。
不过,要回答您的问题,您需要向推送通知提供商注册该应用程序。在 Android,本机提供程序是 Firebase。在 iOS,本机提供程序是 Apple 推送通知服务 - 或简称 APNS。但是,您也可以通过 Google 提供的包将 Firebase 用于 iOS - Microsoft 已经为其发布了 Xamarin 绑定。
这是一个非常好的视频,展示了如何做到这一点 (https://www.youtube.com/watch?v=GNBuaAB8nR8),它是最新的(2021 年上传),并且在撰写本文时,这个人在微软工作。
实施后,您将需要一些方法将消息从数据库推送到 Firebase。我的建议是一个简单的 API。然后,Firebase 将处理以推送通知的形式将该数据推送到您的应用程序。您可以在此处阅读有关 Firebase 通知消息架构的信息:https://firebase.google.com/docs/cloud-messaging/concept-options
只是为了 re-iterate 我在顶部所说的。我强烈建议您不要直接从移动应用程序连接到数据库。除了这样做的许多安全隐患外,如果您需要扩大应用程序的规模,您将面临许多设计挑战。
已编辑:修正了一个拼写错误。