IntentService 与ResultReceiver】的更多相关文章

IntentService和ResultReceiver的异步处理 1.在下载手机上从网络下载东西的时候会用到AsyncTask来方便处理,这里可以在用IntentService和ResultReceiver 对一些基本概念做一些了解: IntentService: IntentService是Service类的子类,用来处理异步请求.客户端可以通过startService(Intent)方法传递请求给IntentService,IntentService通过worker thread处理每个I…
from://http://lyzhanghai.iteye.com/blog/947504 在google的I/O大会中关于“Writing zippy Android apps”,有讲过用IntentService的问题,但是因为API文档中对IntentService描述不是很详细,所以很少人使用IntentService. android.app.IntentService“IntentService is a base class for Services that handle as…
IntentService是继承自Service类的,在执行耗时操作时,其实,只需要在service中的onStartCommand(主线程)新启一个线程即可,那IntentService什么时候用来会比较好呢? 我们通过startService多次启动了IntentService,这会产生多个job,由于IntentService只持有一个工作线程,所以每次onHandleIntent只能处理一个job.面多多个job,IntentService会如何处理?处理方式是one-by-one,也就…
http://developer.android.com/training/run-background-service/index.html IntentService 只是简单的对Service做了一个封装.是一个抽象类,需要实现 onHandleIntent 方法. .onCreate的时候新启了一个 HandlerThread .onStart的时候在工作线程里调用回调函数:protected abstract void onHandleIntent(Intent intent); .o…
稍微纤细一点儿的信息是: Handler (android.os.Handler) {215ddea8} sending message to a Handler on a dead thread. 在另一次在IntentService里使用MediaPlayer 播放铃声也再现错误,信息是:Handler) {42414500} sending message to a Handler on a dead thread. 本次的完整信息是: W/ActivityManager( 1394):…
HandlerThread 为什么要使用HandlerThread? 我们经常使用的Handler来处理消息,其中使用Looper来对消息队列进行轮询,并且默认是发生在主线程中,这可能会引起UI线程的卡顿,所以我们用HandlerThread来替代... HanderThread实际上就是一个线程 @Override public void run() { mTid = Process.myTid(); Looper.prepare(); synchronized (this) { mLoope…
IntentService是继承于Service并处理异步请求的一个类,在IntentService内有一个工作线程来处理耗时操作,启动IntentService的方式和启动传统Service一样,同时,当任务执行完后,IntentService会自动停止,而不需要我们去手动控制.另外,可以启动IntentService多次,而每一个耗时操作会以工作队列的方式在IntentService的onHandleIntent回调方法中执行,并且,每次只会执行一个工作线程,执行完第一个再执行第二个,以此类…
首先说下,其他概念:Android中的本地服务与远程服务是什么? 本地服务:LocalService 应用程序内部------startService远程服务:RemoteService android系统的应用程序间 ---- bindService它可以通过自己定义并暴露出来的接口进行程序操作.客户端建立一个到服务对象的连接,并通过那个连接来调用服务.连接以调用Context.bindService()方法建立,以调用 Context.unbindService()关闭.多个客户端可以绑定至…
IntentService:异步处理服务,新开一个线程:handlerThread在线程中发消息,然后接受处理完成后,会清理线程,并且关掉服务. IntentService有以下特点: (1)  它创建了一个独立的工作线程来处理所有的通过onStartCommand()传递给服务的intents. (2)  创建了一个工作队列,来逐个发送intent给onHandleIntent(). (3)  不需要主动调用stopSelft()来结束服务.因为,在所有的intent被处理完后,系统会自动关闭…
和HandlerThread一样,IntentService也是Android替我们封装的一个Helper类,用来简化开发流程的.接下来分析源码的时候 你就明白是怎么回事了.IntentService是一个按需处理用Intent表示的异步请求的基础Service类,本质上还是Android Service. 客户端通过Context#startService(Intent);这样的代码来发起一个请求.Service只在没启动的情况下启动,并且在一个worker thread 中处理所有的异步请求…