【问题标题】:will an android service run code from the Xamarin Forms Project even when the app is closed?即使应用程序关闭,android 服务也会运行 Xamarin Forms Project 中的代码吗?
【发布时间】:2018-12-14 16:50:05
【问题描述】:

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

现在我正在实现应用程序的其他功能,但如果在服务中完成工作的代码可以在 android 和 iOS 之间共享,如果有人在我这样做之前我会欣赏任何信息,那就太好了可以提供。

【问题讨论】:

    标签: android service xamarin.forms


    【解决方案1】:

    在android 8.0或更高版本无法实现,因为它不允许在后台注册服务,有一些限制你可以refer to it

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

    • 使用 Android 作业安排工作在后台运行 调度程序或 Firebase 作业调度程序

    • 在前台启动服务

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

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

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

    不,在 Xamarin Forms 中无法实现。

    【讨论】:

    • 很好的答案,谢谢,我不知道从 8.0 开始我无法使用广播接收器,whatsapp 是如何工作的?我的服务不能依赖 FCM,那么如何在 8.0 启动时启动该服务?很多问题jajajaa
    • 也许 JobScheduler 是一个不错的选择,您可以参考此链接了解更多详情:blog.xamarin.com/replacing-services-jobs-android-oreo-8-0
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-22
    • 2017-11-29
    • 2012-05-07
    • 2023-03-02
    • 1970-01-01
    相关资源
    最近更新 更多