一、Activity或service中
//服务类(代码中注册和撤销服务,不需要在清单文件中声明)
private class InnerReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Logger.i(TAG, "我是服务里面的内部的广播接受者");
String number = getResultData();
String address = AddressDao.getAddress(number);
// Toast.makeText(context, addres, 1).show();
showLocation(address);
}
}
@Override
public void onCreate() {
receiver = new InnerReceiver();// 实例化广播接受者对象
// 代码方式注册广播接受者
IntentFilter filter = new IntentFilter();
filter.addAction("android.intent.action.NEW_OUTGOING_CALL");
filter.setPriority(1000);
registerReceiver(receiver, filter);
super.onCreate();
}
@Override
public void onDestroy() {
unregisterReceiver(receiver); //服务停止的时候 取消广播接受者的注册
receiver = null;
super.onDestroy();
}