首页 > 解决方案 > 即使应用程序关闭,android 服务也会运行 Xamarin Forms Project 中的代码吗?

问题描述

我正在创建一个 Xamarin Forms 项目,我想实现一个服务,该服务将运行 signalr 并从手机启动开始。

现在我正在实现该应用程序的其他功能,但如果在服务中完成工作的代码可以在 android 和 iOS 之间共享,如果有人在我之前完成了这项工作,我会很感激可以提供的任何信息。

标签: androidservicexamarin.forms

解决方案


android 8.0以后无法实现,因为不允许后台注册服务,有一些限制可以参考

以下是 Android 服务的一些实用替代方案:

  • 使用 Android Job Scheduler 或 Firebase Job Dispatcher 安排工作在后台运行

  • 在前台启动服务

  • 使用高优先级 Firebase 云消息 (FCM)
  • 当应用程序进入前台时推迟工作

在 android 8.0 之前,你可以定义一个广播接收器,然后过滤 android.intent.action.BOOT_COMPLETED ,如果 App 过滤它并在后台启动服务。

“如果在服务中完成工作的代码可以在 android 和 iOS 之间共享,那就太好了”</p>

不,它不能在 Xamarin Forms 中实现。


推荐阅读