firebase - 在 Xamarin Forms 上收到推送通知时,如何在后台服务中运行代码
问题描述
我需要帮助。即使应用程序已关闭,我也需要执行一项作业(将 UserId 和用户位置发送到服务器) 。我尝试了许多不同的方法,但我无法让它发挥作用。
这是一个 Xamarin 表单应用程序(Android 和 iOS)。我专注于Android方面。如果建议的解决方案有必要,我有一个推送通知服务(使用 azure-NotificationHub 的 FCM)。
解决方案
如果您需要定期执行此任务,我建议service
您在应用程序中添加一个将在后台运行并在很大程度上与应用程序其余部分的状态分开的应用程序。您可以在此处找到一些相关文档:运行后台服务 - Android。
您提到如有必要,您有一个通知中心 - 本质上,通知中心的 Android 客户端 SDK 将创建一个类似于上面链接的服务并侦听事件以触发某些操作。如果您需要随机的数据(即不是以固定的节奏),这可能是一个好方法。但是,假设您只想每隔几分钟更新一次位置,那么运行您自己的后台服务可能更简单。
推荐阅读
- python-3.x - 有没有一种方法可以使通过 for 循环生成的按钮跨越两列
- excel - Excel VBA在office 2007中抛出下标超出范围,但在office 2013中没有
- git - Git 使用 decorate-refs-exclude 简化装饰
- javascript - 与 WordPress function.php 和页脚自定义链接的区别?
- sql - Power BI 是否是在导入之前对 SQL 查询中的数据进行分组的最佳实践,即使这可能会影响您以后编写某些 DAX 表达式的方式?
- r - 如何用R比较两列
- xml - 在 XSLT 中生成序列号
- android - 如何使用具有特殊字符(如“+”)的查询在 Firebase 中进行搜索
- php - 如何优化包含具有 3000 个选项的选择下拉列表的网页,加载时间过长?
- javascript - 如何确认请求是并行/并发的