Android Service总结_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > Android Service总结

Android Service总结

 2013/11/8 10:15:52  安卓吧  博客园  我要评论(0)
  • 摘要:一、Service是什么?为什么要使用Service?Service是运行在后台运行的应用组件,不与用户交互。Service不是进程,也不是线程。处理耗时操作,需开启子线程。二、Service按启动方式分类启动方法Activity与Service是否返回值何时被动终止手动关闭startService没有关联no?不能使用binder方法?Activity退出,仍运行stopService或stopSelf(只有intent执行完才行停止掉
  • 标签:总结 android Service
一、 Service是什么?为什么要使用Service? Service是运行在后台运行的应用组件,不与用户交互。 Service不是进程,也不是线程。 处理耗时操作,需开启子线程。     二、 Service按启动方式分类 启动方法 Activity与Service 是否返回值 何时被动终止 手动关闭 startService 没有关联 no? 不能使用binder方法? Activity退出,仍运行 stopService或stopSelf(只有intent执行完才行停止掉) bindService 可以多个Activity绑定 yes,可以IPC通信 所有绑定Activity退出,才退出 同上     三、startService 实例   四、BindService 传值相关概念 bindSerice是Activity与Service通过binder进行通信: Binder Messager AIDL   IPC, RPC, LPC, AIDL   六 Activity向Service传值方式 1. Binder -  activity与application在同一个进程中使用与另外进程service通信 2. Messenger - 消息队列中执行,单线程. 底层用的就是AIDL 3. AIDL - 多线程 AIDL: 进程间通信, 定义.AIDL接口文件,本地实现. 公布.aidl文件.

通过Service子类实现

支持类型:java原始类型,String,parcelable,list,map

bindService

  ** Activity与Service第一种传值方式Binder 实例   ** Activity与Service第二种传值方式Messager 实例   ** Activity与Service第三种传值方式AIDL 实例   四 Service的生命周期,反复执行?startService和bindService混合执行?   具体操作 第一步 第二步 第三步 第四步 第五步 执行一次startService onCreate onStartCommand running   onDestroy 执行一次bindService onCreate onBind running onUnbind onDestroy 多次使用startService onCreate 多次执行onStart     onDestroy 多次执行bindService onCreate onBind running onUnbind onDestroy           IntentService  异步调用的Service,也是Starded Service IntentService解析
http://blog.csdn.net/tu_bingbing/article/details/11542955 IntentService 增加多线程支持       七 思考 1)需要后台运行? 那为什么不使用子线程? (* Service与thread的区别?) 1. Activity被finish掉, 就不会再持有Thread的引用. 2. 无法在多个Activity中,对同一个Thread进行控制. 多线程 - 想要在子线程做的事情与主线程通信频繁 service - 要处理的事情,可以逻辑上才分开,很少进行通信   Android中Local Service最本质的作用是什么?   2)保证Service不被关闭 使用方法startForeground,使Service位于前端进程中
上一篇: Android--序列化XML数据 下一篇: 没有下一篇了!
发表评论
用户名: 匿名