首页 > 解决方案 > 在 Xamarin Forms 上收到推送通知时,如何在后台服务中运行代码

问题描述

我需要帮助。即使应用程序已关闭,我也需要执行一项作业(将 UserId 和用户位置发送到服务器) 。我尝试了许多不同的方法,但我无法让它发挥作用。

这是一个 Xamarin 表单应用程序(Android 和 iOS)。我专注于Android方面。如果建议的解决方案有必要,我有一个推送通知服务(使用 azure-NotificationHub 的 FCM)。

标签: firebasexamarinxamarin.formsxamarin.androidazure-notificationhub

解决方案


如果您需要定期执行此任务,我建议service您在应用程序中添加一个将在后台运行并在很大程度上与应用程序其余部分的状态分开的应用程序。您可以在此处找到一些相关文档:运行后台服务 - Android

您提到如有必要,您有一​​个通知中心 - 本质上,通知中心的 Android 客户端 SDK 将创建一个类似于上面链接的服务并侦听事件以触发某些操作。如果您需要随机的数据(即不是以固定的节奏),这可能是一个好方法。但是,假设您只想每隔几分钟更新一次位置,那么运行您自己的后台服务可能更简单。


推荐阅读