23 服务的小小总结

Service:服务

四大组件:Activity ContentProvider BroadCastReceiver Service

Service:在后台执行长时间的操作,没有用户界面,是一个可执行的程序

2,用途:
1,下载大文件
2,播放音乐
3,记录位置信息(地图)
3,Activity 区别:

activity:有可见的界面 在主线程执行
Service:没有界面 在后台执行 在主线程执行

4.Service和线程的区别:Service 不是线程 (面试)

5,使用:
1,启动Service
生命周期:
09-22 00:57:54.150: E/MyService(9105): ===onCreate===
09-22 00:57:54.150: E/MyService(9105): ===onStartCommand===
09-22 00:58:00.150: E/MyService(9105): ===onDestroy===

    特点:1,Service和启动源(Activity)是没有关系的
         2,启动源无法从Service里获取数据

2,绑定Service(如果想从Service里获取数据  使用绑定Service)
    生命周期:
        09-22 02:40:21.430: E/MyService(11242): ===onCreate===
        09-22 02:40:21.430: E/MyService(11242): ===onBind===
        09-22 02:40:26.320: E/MyService(11242): ===onUnbind===
        09-22 02:40:26.320: E/MyService(11242): ===onDestroy===

IntentService:内部开启了线程 可以多次执行 每个耗时操作会进行排列 OnHandlerIntent()

IntentService适合只有一个线程时使用 如果有多个线程同时执行 用普通的service

启动方式:startService()

原文地址:https://www.cnblogs.com/muyuge/p/6152188.html