android BroadcastReceiver详细讲解1-自带的广播接受器-拨号、短信、卸载/安装、开机启动
来源:互联网 发布:网络词cp是什么意思 编辑:程序博客网 时间:2024/05/21 04:41
android中自带的广播接受器
在上一篇文章中SD卡的监听
下面我继续来介绍
安装与卸载的监听
- 我们先了解android中安装与卸载的action
<intent-filter > <action android:name="android.intent.action.PACKAGE_REMOVED"/> <action android:name="android.intent.action.PACKAGE_ADDED"/> <data android:scheme="package"></data> </intent-filter>
将上段代码,添加到我们注册的广播接收器中 在AndroidManifest.xml
<receiver android:name="IntallReceiver"> <intent-filter > <action android:name="android.intent.action.PACKAGE_REMOVED"/> <action android:name="android.intent.action.PACKAGE_ADDED"/> <data android:scheme="package"></data> </intent-filter> </receiver>
2.我们新建一个广播接收器java类
public class IntallReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String packageName = intent.getData().toString(); String action = intent.getAction(); // 如果是卸载if ("android.intent.action.PACKAGE_REMOVED".equals(action)) { Toast.makeText(context, packageName+"应用程序被卸载", 1).show(); System.out.println(packageName+"已删除"); } else if ("android.intent.action.PACKAGE_ADDED".equals(action)) { Toast.makeText(context, packageName+"应用程序安装", 1).show(); System.out.println(packageName + "已安装"); } }}
然后运行我们的程序
这是监听卸载
监听拨打电话
1 还是先了解一下android的拨打电话action
<!-- 属性代表着给当前接收者设置优先级,优先级越高越优先接收到广播。 --> <intent-filter android:priority="1000" > <action android:name="android.intent.action.NEW_OUTGOING_CALL" /> </intent-filter>
注意还有相应的权限
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
2 新建一个广播接收器java类 继承BroadcastReceiver
public class IPCallReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //获取拨打电话的号码 String call=getResultData(); //在电话号码前加上110,然后返回数据 setResultData("110"+call); }}
我们看一下运行的结果
我们拨打 789-看图片显示的是110789
//在电话号码前加上110,然后返回数据
setResultData(“110”+call);
监听开机启动
1 注册广播接受器
<receiver android:name="BootCompeletedReceiver"> <intent-filter > <action android:name="android.intent.action.BOOT_COMPLETED"/> </intent-filter> </receiver>
2 权限
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
3 类
public class BootCompeletedReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { Toast.makeText(context, "开机启动已完成", 1).show(); }}
短信拦截器
1 注册广播接受器
<receiver android:name="SmsReceiver"> <intent-filter android:priority="1000"> <action android:name="android.provider.Telephony.SMS_RECEIVED"></action> </intent-filter> </receiver>
2 权限
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
3 类
public class SmsReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // 获取短信 pdus : 短信集合 Object[] object = (Object[]) intent.getExtras().get("pdus"); for (Object pdus : object) { // 获取短信的对象 // //通过Android API中的SmsMessage类将短信字节数组转化为短信对象 SmsMessage message = SmsMessage.createFromPdu((byte[]) pdus); // 获取短信的来源 String address = message.getOriginatingAddress(); // 获取短信的内容 String body; body = message.getMessageBody(); String string2; try { string2 = new String(body.getBytes(),"gbk"); Toast.makeText(context, address + "----" + string2, 1).show(); System.out.println(address + "----" + string2); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }}
ok,以上是android中自带的广播接收器,下一篇文章我们来讲无序广播和有序广播
更多
1 0
- android BroadcastReceiver详细讲解1-自带的广播接受器-拨号、短信、卸载/安装、开机启动
- android BroadcastReceiver广播接受器的使用
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听
- 安卓1108_四大组件-BroadCastReceiver广播接收者 ip拨号 短信拦截 开机自启 sd卡状态 APP安装监测 有序 无序广播 帧动画 国际化 style和theme
- Android (BroadcastReceiver与程序的开机自启动)
- Xamarin.Android 开机广播、开机自启动
- Android系统广播大全及开机自启动的Service
- Android Action广播大全,开机自启动的服务
- Android系统广播大全及开机自启动的Service
- Android系统广播大全及开机自启动的Service
- Android系统广播大全及开机自启动的服务
- Android系统广播大全及开机自启动的Service
- Android系统广播大全及开机自启动的Service
- android开机启动接收广播和接收短信广播DEMO
- Android开机自启动应用通过广播
- 用第三方SDWebImage下载网上的图片
- svn常用命令
- 在项目中使用语音功能
- linux - xz压缩格式
- ios 防止按钮快速点击造成多次响应的避免方法。
- android BroadcastReceiver详细讲解1-自带的广播接受器-拨号、短信、卸载/安装、开机启动
- C语言---迷宫游戏 代码
- 开源爬虫框架各有什么优缺点?
- gles fage着色器的默认精度设置
- Listview动态添加/删除数据
- android中popupwindow的实现,弹出后页面变暗
- PLSQL使用技巧
- C++类中的枚举类型
- java html转pdf 使用wkhtmltox 组件