如何在清除 RAM 时保持后台服务运行 - Xamarin.Android

How to keep background service alive when I clear the RAM - Xamarin.Android

我在我的项目中做了一个后台服务。如何让后台服务保持活跃?

我使用以下代码:

public override StartCommandResult OnStartCommand(Intent intent, StartCommandFlags flags, int startId)
        {
            ambil_jam();
            return StartCommandResult.Sticky;
        }

但是,它只会在我关闭应用程序以及当我尝试清除 RAM 时关闭后台服务时让它保持活动状态。

我也用这个:

[Register("onTaskRemoved", "(Landroid/content/Intent;)V", "GetOnTaskRemoved_Landroid_content_Intent_Handler")]
public virtual void OnTaskRemoved()
{
     StartService(new Intent(this, typeof(SimpleService)));
}

但是,当我关闭我的应用程序时,它永远不会被调用。方法 onTaskRemoved() 是否覆盖,还是我需要再次调用它?

我正在使用 Xamarin.Android。

某些手机上有节电控件,可能会阻止您的 Service 重新启动。小米、华为、LG等都有单独的设置让你控制这个。

  • 打开小米提供的安全APP
  • 点击权限 -> 自动启动
  • 此处允许您的应用自动启动