美文网首页
Android 稳定运行的服务 前台服务

Android 稳定运行的服务 前台服务

作者: AndroidLazy | 来源:发表于2020-06-02 17:10 被阅读0次

由于Android8.0版本开始,应用的后台功能被大幅削减,服务随便可能被系统杀死,为了能保持服务长期运行,使用前台服务。

class MyService : Service(){

    override fun onCreate() {
        super.onCreate()
        
        val manager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
            val notificationChannel = NotificationChannel("my_service", "前台服务通知", NotificationManager.IMPORTANCE_DEFAULT)
            manager.createNotificationChannel(notificationChannel)
        }
        val intent = Intent(this, MainActivity::class.java)
        val pendingIntent = PendingIntent.getActivity(this, 0, intent, 0)
        val notification = NotificationCompat.Builder(this, "my_service")
                .setContentTitle("this is content title")
                .setContentText("this is content text")
                .setSmallIcon(R.drawable.small_icon)
                .setLargeIcon(BitmapFactory.decodeResource(resources, R.drawable.large_icon))
                .setContentIntent(pendingIntent)
                .build()
        startForeground(1,notification)
    }
}

这样,在服务创建的时候就会在手机状态栏出现服务通知,不会被系统不明不白杀死,又能让用户自己控制。

另外在Android9.0开始,使用前台服务需要进行权限声明。

<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

相关文章

  • Android 稳定运行的服务 前台服务

    由于Android8.0版本开始,应用的后台功能被大幅削减,服务随便可能被系统杀死,为了能保持服务长期运行,使用前...

  • Android 服务的限制

    服务的分类 Google官网将Android服务分为了三种,前台服务,后台服务和绑定服务: 前台 前台服务执行一些...

  • Kevin Learn Android:Service 使用

    Service 分类 按运行地点可以分为: 本地服务 远程服务 按运行类型可以分为: 前台服务 后台服务 按功能可...

  • Android使用前台服务

    Android使用前台服务和普通服务在代码上的区别也就是一个Notification,代码如下: 要从前台删除服务...

  • Android Service

    Android Service(服务) 服务的定义服务是Android中实现后台运行的解决方案。 android多...

  • APP开发实战69-前台服务

    17.4前台服务 前台服务是被认为是用户已知的正在运行的服务,当系统需要释放内存时不会优先杀掉该进程。前台进程必须...

  • Java线程 - 守护线程

    线程分为两类: 用户线程:运行在前台,执行具体任务 守护线程:运行在后台,为其他前台线程服务(也就是某些线程的服务...

  • Notification

    前台服务通知 如果您的应用正在运行“前台服务”(一种长时间在后台运行且用户可察觉到的 [Service](http...

  • Android 前台服务

    https://www.cnblogs.com/renhui/p/8575299.html

  • Dubbo-概述

    一、总体架构 Container:服务运行容器,为服务的稳定运行提供运行环境。 Provider:提供方,暴露接口...

网友评论

      本文标题:Android 稳定运行的服务 前台服务

      本文链接:https://www.haomeiwen.com/subject/ogtpzhtx.html