前两节中可以看到Activity和Service,context.startService对应着Service中的onStart()方法,context.onBindService对应的是Service中的onBind()方法。当我们继想绑定一个Service又想在Activity停止时,Service不会停止,我们可以先StartService,然后再BindService()。这时候的流程图如下所示:

此时需要注意一个问题,当Activity退出的时候,Sercvice并不会停止,此时我们可以再进入Activity重新绑定,当这时候Service就会调用onRebind()方法,但是调用onRebind()方法的前提是先前的onUnbind()方法执行成功,但是使用super.onUnbind(intent)是执行不成功的,这时候我们要手动的使其返回true,再次绑定时Rebind()就会执行。否则,如果退出时不显示的指定onUnbind()为成功的话(为false),那么重新启动此Activity来绑定服务时,Service的onBind()方法和onReBind都不会执行,但是ServiceConnection方法确一定会回调了。这说明在Service中的onBind()方法不同于onStart()方法不能被重复调用。​


本节代码和上节代码大致相同,只不过是在bind之前先start service ,大家可以在DDMS中看onUnbind() onRebind()的调用情况。本节代码在此下载:

http://download.csdn.net/detail/internetman/3967758

更多相关文章

  1. Android调用系统图库获取图片
  2. android-ProgressBar
  3. 2018年Android面试题整理
  4. android中实现JavaScript与Java之间实现互相调用
  5. 关于 bin/resources.ap_ does not exist 的解决方法
  6. Android(安卓)Studio -添加你见过的最牛Log*神器*
  7. Android(安卓)调用已安装市场,去应用市场评分
  8. Android4.03中遭遇Installation error: INSTALL_FAILED_INSUFFIC
  9. Android中Handler、HandlerThread、AsyncTask的应用

随机推荐

  1. android 5.0 新特性之最近应用程序
  2. android 加速度传感器妙用与自定义View
  3. Android(安卓)程序员学习 iOS —— 在线
  4. android studio导入Eclipse项目出现的几
  5. Android枚举类引用实例
  6. Android之 看“马达”如何贯通Android系
  7. Android通过Service实现简单的音乐播放
  8. Android帮助文档翻译——开发指南(二)Activ
  9. Android启动页面定时跳转的三种方法
  10. 从零开始--系统深入学习android(实践-让我