几个小时后如何停止前台服务

问题描述

我做了一个前台服务,它正在工作。但是,运行数小时后,它将停止工作。数小时后,它又恢复了工作。我需要一种可以让您无法停止运行的服务,或者说它比现在更不可阻挡的服务

class RastreioService : Service() {

    override fun onBind(intent: Intent?): IBinder? {
        TODO("Not yet implemented")
    }


    override fun onStartCommand(intent: Intent?,flags: Int,startId: Int): Int {
        startForegroundService()
        /*business rules*/
        return START_STICKY
    }
    
    override fun onDestroy() {
        super.onDestroy()
    }


    private fun startForegroundService(){
        var notification = createNotification()
        val idService = 1
        startForeground(idService,notification)
    }

    private fun createNotification(): Notification {
        val notificationIntent = Intent(this,RastreioService::class.java)
        val pendingIntent = PendingIntent.getActivity(this,notificationIntent,0);

        val notification = Notification.Builder(this,"1")
            .setSmallIcon(R.drawable.ic_gps_ativo)
            .setContentTitle("Localização Sendo Acessada")
            .setContentText("A sua localização está sendo acessada")
            .setContentIntent(pendingIntent)
            .build()

        return notification
    }


}

我发现了一个类似的问题: foreground services stopping after several hours 但是我不知道我需要在哪里以及如何使用JobScheduler,这是否是唯一的解决方案

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...