android : 深入了解service

android : 深入理解service
service就是后台运行的东东,它比处于前台的应用优先级低,但是比后台的其他应用优先级高,这就决定了当系统因为缺少内存而销毁某些没被利用的资源时,它被销毁的概率很小哦。
以前做过音乐播放器,你把播放放在service而是放在java类是不对的,因为java处于后台的时候优先级低,容易被回收,因此播放会意外终止

说几点service特性
1. service分本地和远程, 本地的就是和主应用在一个进程内,远程的在不同进程
2. startService()和bindService()分别什么时候用呢,其实从名字大概也能看出,前者是启动一个服务端,让他自己干活,直到调stopService才推出,后者是要绑定一个服务,既然是绑定,肯定希望得到一些东西,比如访问数据或者方法(绑定成功后回调通过onServiceConnected,就能拿到binder和service对象),所有只有绑定的时候,以下方法才有意义
IBinder onBind(Intent intent)
boolean onUnbind(Intent intent)
void onRebind(Intent intent)


3. 可以绑定一个已经通过startService()方法启动的服务。例如:一个后台播放音乐服务可以通过startService(intend)对象来播放音乐。可能用户在播放过程中要执行一些操作比如获取歌曲的一些信息,此时activity可以通过调用bindServices()方法与Service建立连接。这种情况下,stopServices()方法实际上不会停止服务,直到最后一次unbind。