Android四大组件之BroadCast(续)
1.哪一个方法可以发送广播?
activity.sendbroadcast or context.sentbroadcast or service.sendbroadcast
2.创建广播接受程序必须继承那个类?
BroadcastReceiver
3.广播接受程序有哪些参数?
public void onReceive(Context context, Intent intent)
//The Context in which the receiver is running
//The Intent being received
4.如何注册广播接受程序?
<receiver android:name="com.htc.globalsearch.imagesearch.service.provider.ImageSearchReceiver" android:exported="false" > <intent-filter> <action android:name="com.htc.intent.action.REBUILDIMAGE" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>
5.如何指出你对特点广播感兴趣? </intent-filter>
6.外部程序是否可以接收广播?
广播的接受看intent-filter 以及permission,满足这个就可以接受。
7.如何访问通知管理器?
mNotificationManager = (NotificationManager)this.getSystemService(NOTIFICATION_SERVICE);
8.Intentservice的目标是什么?
IntentService是一个通过Context.startService(Intent)启动可以处理异步请求的Service,使用时你只需要继承IntentService和重写其中的onHandleIntent(Intent)方法接收一个Intent对象,在适当的时候会停止自己(一般在工作完成的时候). 所有的请求的处理都在一个工作线程中完成,它们会交替执行(但不会阻塞主线程的执行),一次只能执行一个请求。
也就是说,intentservice会启动一个service并且启动线程处理程序,而不会阻塞主线程。
IntentService 实际上是Looper,Handler,Service 的集合体,他不仅有服务的功能,还有处理和循环消息的功能.
14.有许多客户端调用intentservice,那么与客户端对应的thread是多少?
1个。所有的操作都在一个线程内执行。通过looper,handle机制来保证同步!
service要处理复杂任务的话,可以通过Looper,Handler的方式在线程内循环,然后通过aidl的方式连接远程service。
15.wakefulintentservice 是什么?
posted on 2015-08-08 16:43 Joyfulmath 阅读(372) 评论(0) 编辑 收藏 举报