扣丁学堂笔记第10天Service组件

1.概述与创建Started服务

扣丁学堂笔记第10天Service组件_第1张图片

服务同时只会被创建一次,除非执行onDestroy()方法或调用stopItself();

当执行一个已启动的服务,会直接调用onStartCommand()方法;

默认情况下服务与主线程在同一个线程中的同一个进程执行,如果执行一个比较耗时的操作,我们必须使用子线程来操作,避免阻塞主线程;

使用started service启动的服务,在没有关闭之前会一直在后台执行


2.Started服务详解

扣丁学堂笔记第10天Service组件_第2张图片扣丁学堂笔记第10天Service组件_第3张图片


3.IntentService

内部有一个工作线程来完成耗时操作,只需实现onHandleIntent()即可;

完成工作后会自动停止服务;

如果同时执行多个任务时,会以工作队列的方式依次执行;

通常使用该类来完成本app的耗时操作


4.BindService

扣丁学堂笔记第10天Service组件_第4张图片

扣丁学堂笔记第10天Service组件_第5张图片


5.Messenger

扣丁学堂笔记第10天Service组件_第6张图片

你可能感兴趣的:(扣丁学堂笔记第10天Service组件)