Android基础-Service
2018-03-03 01:37
183 查看
Service面试详解
一、service基础
1.Service是什么?
Service(服务)是一个一种可以在后台执行长时间运作操作而没有用户界面的应用组件。(运行在主线程里的,里面不能做耗时操作。如果要进行耗时操作,则在Service里面开启子线程)
2.service和Thread的区别(不能把后台把子线程联系在一起,服务和后台也是如此)
A.定义
①Thread是程序执行的最小单元,分配CPU的基本单位
②Service是Android中的一种特殊机制,在主线程中,由系统托管,是一种轻量级的IPC通信(与Activity)。
B.实际开发
①在Android中线程一般指的是子线程,进行一些耗时操作的线程,而主线程是处理UI绘制,不能进行耗时操作
②一般在主线程中运行,不能进行耗时操作,否则会产生ANR异常
C.应用场景
①耗时网络、文件数据查询等会阻塞UI线程的操作时应开启子线程
②长时间在后台运行而且不需要UI交互的情况下使用到服务,如播放音乐,开启天气预报或数据统计。
二、开启Service的两种方式以及区别
1.startService
①定义一个类继承Service
②在Manifest.xml文件中配置该Service
③使用Context的startService(Intent)方法启动该Service
④不再使用时,调用stopService(Intent)方法停止该服务
2.bindService
①创建BindService服务端,继承自Service并在类中,创建一个实现IBinder接口的实例对象并提供公共方法给客户端调用
②从onBind()回调方法返回此Binder实例
③在客户端中,从onServiceConnected()回调方法接收Binder,并使用提供的方法调用绑定服务。
一、service基础
1.Service是什么?
Service(服务)是一个一种可以在后台执行长时间运作操作而没有用户界面的应用组件。(运行在主线程里的,里面不能做耗时操作。如果要进行耗时操作,则在Service里面开启子线程)
2.service和Thread的区别(不能把后台把子线程联系在一起,服务和后台也是如此)
A.定义
①Thread是程序执行的最小单元,分配CPU的基本单位
②Service是Android中的一种特殊机制,在主线程中,由系统托管,是一种轻量级的IPC通信(与Activity)。
B.实际开发
①在Android中线程一般指的是子线程,进行一些耗时操作的线程,而主线程是处理UI绘制,不能进行耗时操作
②一般在主线程中运行,不能进行耗时操作,否则会产生ANR异常
C.应用场景
①耗时网络、文件数据查询等会阻塞UI线程的操作时应开启子线程
②长时间在后台运行而且不需要UI交互的情况下使用到服务,如播放音乐,开启天气预报或数据统计。
二、开启Service的两种方式以及区别
1.startService
①定义一个类继承Service
②在Manifest.xml文件中配置该Service
③使用Context的startService(Intent)方法启动该Service
④不再使用时,调用stopService(Intent)方法停止该服务
2.bindService
①创建BindService服务端,继承自Service并在类中,创建一个实现IBinder接口的实例对象并提供公共方法给客户端调用
②从onBind()回调方法返回此Binder实例
③在客户端中,从onServiceConnected()回调方法接收Binder,并使用提供的方法调用绑定服务。
相关文章推荐
- Android源码基础解析之IntentService
- [Android 基础系列]Service、IntentService和习以为常的误解
- Android基础总结——进程优先级及提高优先级的方法(Service尽量不死之法)
- [Android基础]Service
- Android基础——Service的使用(绑定本地Service并与之通信)
- Android的Service的基础知识和见解
- 广播+ Service详解、通知和权限-Android基础知识整理
- 【Android基础入门〖4〗】四大组件之Service
- Android学习篇章33-Service基础
- Android之service一些基础回顾
- android基础再学习---如何保证Service不被杀掉
- android四大组件基础(五),绑定Service服务(含IPC)
- Android基础--Service
- android基础总结篇之四:Service完全解析
- Android基础 : Android Service[转]
- Android基础(十) Service 服务
- Android基础 : Android Service[转]
- Android基础之Service(1)—本地服务
- Android 回顾Service之Service基础使用