Android:Context.startService/Context.bindService的区别
来源:互联网 发布:淘宝 军品 编辑:程序博客网 时间:2024/06/05 05:57
Context.startService
Context.bindService
基本功能
启动一个Service,如果该Service没有启动则启动一个Service(必要时创建进程),如果已经存在,则不做任何事情。一旦创建以后,不管调用者是否被销毁,该service仍然存在。一般用于不需要像调用者返回结果的情况,如下载文件以后自行停止自己。
通过bindService启动的Service,和调用者之间类似C/S的关系,调用者为client,该Service为Server,可以进行必要的通信。同时可以有多个client bindService到该service。
停止Service
由调用者显示stopService或由自己stopSelf来停止
当所有bind到这个service的进程退出后,自动停止Service
回调API
onStartCommand()
onBind()
调用
Intent intent = new Intent(this,HelloService.class);
startService(intent);
Intent intent = new Intent(this, LocalService.class);
bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
BroadcastReceiver
可以调用startService
一般不能直接调用bindService,但是通过registerReceiver(BroadcastReceiver, IntentFilter)注册的Receiver则可以(上下文变化了)。
Service定义方式
实现onStartCommand()
必须实现ServiceConnection conn
来进行通信
参考
Service
Bound Services
注意事项:默认情况下,调用的Service只运行在主线程中,不会单独创建thread和process,除非指定android:process属性。因此,为了避免ANR,最好在Service中启动thread来做需要处理的事务。
- Android:Context.startService/Context.bindService的区别
- Service(1)之Context.startService()与Context.bindService()区别 .
- Android学习札记三:初涉Service(1)之Context.startService()与Context.bindService()区别
- Android学习札记三:初涉Service(1)之Context.startService()与Context.bindService()区别(转)
- Android startservice & bindservice的区别
- 初涉Service(1)之Context.startService()与Context.bindService()区别
- android startService bindService区别
- startservice bindservice的区别
- android startService 与bindService的区别
- android service startService与bindService的区别
- Android中 startService()和bindService()的区别
- Android startService和bindService的区别
- Android之startService与bindService的区别
- Android中startService和bindService的区别
- Android Context的startService方法如何使用?
- android 之 Service(Context BindService())
- startService 和 bindService的区别
- startService 和 bindService的区别
- JSP解析成Servlet
- 换行符乱谈(文本文件vs二进制文件)
- TLD(Tracking-Learning-Detection)学习与源码理解之(六) .
- 8*8点阵
- D-Target 1
- Android:Context.startService/Context.bindService的区别
- windows xp 安装sql server 2000提示‘以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前请重新启动计算机’
- jquery常用选择器
- 给证件照换背景颜色
- php-serial
- 庖丁解牛TLD(三)——算法初始化 .
- IE10的新世纪
- H264 encode and decode
- cmd命令学习