Android编程四大组件之BroadcastReceiver(广播接收者)用法实例

2019-12-10 19:30:54王振洲

监听呼出电话

1.定义广播接收者接收 android.intent.action.NEW_OUTGOING_CALL
2.需要权限

复制代码 <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
3.在onReceive方法中使用getResultData() 和 setResultData() 方法获取和设置电话号码

 

public void onReceive(Context context, Intent intent) {
  //获取到手机号
  String num = getResultData();
  // ... 查询是否本地
  //对获取到的电话号进行操作
  setResultData("17951" + num);
}

生命周期

1.广播接收者的生命周期是非常短暂的,在接收到广播的时候创建,onReceive()方法结束之后销毁
2.广播接收者中不要做一些耗时的工作,否则会弹出Application No Response错误对话框
3.最好也不要在广播接收者中创建子线程做耗时的工作,因为广播接收者被销毁后进程就成为了空进程,很容易被系统杀掉
4.耗时的较长的工作最好放在服务中完成

希望本文所述对大家Android程序设计有所帮助。



注:相关教程知识阅读请移步到Android开发频道。