常用:
Android广播接实现短信的监听
Action :android.provider.Telephony.SMS_RECEIVED
对应权限<uses-permission android:name="android.permission.RECEIVE_SMS">
</uses-permission>
Android广播接实现电话的监听
1:需要在AndroidManifest.xml清单中添加权限
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
2:注册广播 要注意事件的级别 (android中的级别-1000~1000)
<receiver android:name=".PhoneBroadcastReceiver">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
<action android:name="android.intent.action.PHONE_STATE"/>
</intent-filter>
</receiver>
屏幕操作相关:
//重启设备时的广播
Intent.ACTION_REBOOT;
//屏幕被关闭之后的广播
Intent.ACTION_SCREEN_OFF;
//屏幕被打开之后的广播
Intent.ACTION_SCREEN_ON;
//在系统启动完成后,这个动作被广播一次(只有一次)。
Intent.ACTION_BOOT_COMPLETED;
//当用户按下电源按钮,长按或短按(不管有没跳出话框),进行锁屏时,android系统都会广播此Action消息
Intent.ACTION_CLOSE_SYSTEM_DIALOGS;
电池相关:
//表示电池电量低
Intent.ACTION_BATTERY_LOW;
//表示电池电量充足,即从电池电量低变化到饱满时会发出广播
Intent.ACTION_BATTERY_OKAY;
存储相关:
//设备内存不足时发出的广播,此广播只能由系统使用,其它APP不可用
Intent.ACTION_DEVICE_STORAGE_LOW;
//设备内存从不足到充足时发出的广播,此广播只能由系统使用,其它APP不可用
Intent.ACTION_DEVICE_STORAGE_OK;
//未正确移除SD卡(正确移除SD卡的方法:设置--SD卡和设备内存--卸载SD卡),但已把SD卡取出来时发出的广播,扩展介质(扩展卡)已经从SD 卡插槽拔出,但是挂载点(mount point) 还没解除(unmount)
Intent.ACTION_MEDIA_BAD_REMOVAL;
//插入外部储存装置,比如SD卡时,系统会检验SD卡,此时发出的广播
Intent.ACTION_MEDIA_CHECKING;
//已拔掉外部大容量储存设备发出的广播(比如SD卡,或移动硬盘),不管有没有正确卸载都会发出此广播,用户想要移除扩展介质(拔掉扩展卡)。
Intent.ACTION_MEDIA_EJECT;
//插入SD卡并且已正确安装(识别)时发出的广播,扩展介质被插入,而且已经被挂载。
Intent.ACTION_MEDIA_MOUNTED;
//拓展介质存在,但使用不兼容FS(或为空)的路径安装点检查介质包含在Intent.mData领域。
Intent.ACTION_MEDIA_NOFS;
//外部储存设备已被移除,不管有没正确卸载,都会发出此广播, 扩展介质被移除。
Intent.ACTION_MEDIA_REMOVED;
程序安装或者卸载相关:
//一个新应用包已经安装在设备上,数据包括包名(最新安装的包程序不能接收到这个广播)
Intent.ACTION_PACKAGE_ADDED;
//一个已存在的应用程序包已经改变,包括包名
Intent.ACTION_PACKAGE_CHANGED;
//触发一个下载并且完成安装时发出的广播,比如在电子市场里下载应用?
Intent.ACTION_PACKAGE_INSTALL;
//成功的删除某个APK之后发出的广播,包括包名(正在被安装程序不能接收到这个广播)
Intent.ACTION_PACKAGE_REMOVED;
//替换一个现有的安装包时发出的广播
Intent.ACTION_PACKAGE_REPLACED;
其他:
//在耳机口上插入耳机时发出的广播
Intent.ACTION_HEADSET_PLUG;
//插上外部电源时发出的广播
Intent.ACTION_POWER_CONNECTED;
//设备当前设置被改变时发出的广播(包括的改变:界面语言,设备方向,等,请参考Configuration.java)
Intent.ACTION_CONFIGURATION_CHANGED;
//关闭或打开飞行模式时的广播
Intent.ACTION_AIRPLANE_M;
//飞行模式发生改变时的广播
Intent.ACTION_AIRPLANE_MODE_CHANGED;
//设备日期发生改变时会发出此广播
Intent.ACTION_DATE_CHANGED;
//改变输入法时发出的广播
Intent.ACTION_INPUT_METHOD_CHANGED;
//已断开外部电源连接时发出的广播
Intent.ACTION_POWER_DISCONNECTED;
//时间被设置时发出的广播
Intent.ACTION_TIME_CHANGED;
//广播:当前时间已经变化(正常的时间流逝), 当前时间改变,每分钟都发送,不能通过组件声明来接收,只有通过Context.registerReceiver()方法来注册
Intent.ACTION_TIME_TICK;
//设备墙纸已改变时发出的广播
Intent.ACTION_WALLPAPER_CHANGED;