Android消息广播的使用
2013-03-18 19:17
267 查看
在Android中,一些设备通过广播的形式向应用程序传递一些状态信息,常见的如USB热挺拔广播信息。在Andoid应用程序中,使用消息广播机制非常简单,只要在Activity中注册感兴趣的广播信息,并添加相应的处理捕获的广播信息的代码即可。
首先,我们新建一个广播消息接收器:
并指定我们要捕获的是哪个广播消息:
然后,我们在Activity中进行注册:
当然,也需要在相应的地方注销该接收器:
首先,我们新建一个广播消息接收器:
private AlertDialog mAlertDialog = null; private BroadcastReceiver mMountReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if (getExternalCacheDir() != null) onStorageReady(); } }; private void onStorageReady() { if (mAlertDialog != null) { mAlertDialog.dismiss(); mAlertDialog = null; unregisterReceiver(mMountReceiver); } }
并指定我们要捕获的是哪个广播消息:
private IntentFilter mMountFilter = new IntentFilter( Intent.ACTION_MEDIA_MOUNTED);
然后,我们在Activity中进行注册:
@Override protected void onStart() { super.onStart(); if (getExternalCacheDir() == null) { OnCancelListener onCancel = new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { finish(); } }; OnClickListener onClick = new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }; mAlertDialog = new AlertDialog.Builder(this) .setIcon(android.R.drawable.ic_dialog_alert) .setTitle("No Storage") .setMessage("No external storage available.") .setNegativeButton(android.R.string.cancel, onClick) .setOnCancelListener(onCancel).show(); registerReceiver(mMountReceiver, mMountFilter); } }
当然,也需要在相应的地方注销该接收器:
@Override protected void onStop() { super.onStop(); if (mAlertDialog != null) { unregisterReceiver(mMountReceiver); mAlertDialog.dismiss(); mAlertDialog = null; } }
相关文章推荐
- Android开发之使用Intent发送广播消息(1)
- Android消息广播的使用
- android 使用广播接收者监听短信和拦截外拨电话
- Android消息传递之EventBus 3.0使用详解
- android使用adb模拟发送广播
- android 使用广播监听网络状态
- android 使用广播监听网络状态
- 初学android之使用Broadcast新建广播使手机关机时播放自定义音乐
- 使用第三方推送平台JPUSH推送消息到android手机
- Android message 消息机制介绍及使用 /*自己编写*/
- Android PDA扫描枪广播接搜条码并使用
- android 广播使用(Broadcast)
- android 广播的使用
- 【Android】使用广播时出现异常:java.lang.InstantiationException: class has no zero argument constructor
- android 消息 广播 线程
- Android中使用广播机制退出多个Activity
- Android中广播的使用(动态、静态注册的区别,有序无序广播的使用)
- Android的消息机制,用Android线程间通信的Message机制,Android中Handler的使用方法——在子线程中更新界面,handler机制
- Android组件通讯与广播消息(3)—获取 Activity 的返回值
- 使用Androidpn实现Android消息推送