由于Android8.0以后 静态注册比较麻烦,这里都采用动态注册。
创建广播接收者
优先级较高的接收者
public class OrderReceiver extends BroadcastReceiver {
private static final String TAG = “OrderReceiver”;
@Override
public void onReceive(Context context, Intent intent) {
if (Constant.ORDER_ACTION.equals(intent.getAction())) {
// 停止往下面传
// abortBroadcast(); //如果不想往下面传递广播,该方法将停止
Bundle resultExtras = getResultExtras(true);
CharSequence charSequence = resultExtras.getCharSequence(Constant.KEY_CHANGE);
//获取广播发送的数据
resultExtras.putCharSequence(Constant.KEY_CHANGE,“23RMB”);
//更改数据
setResultExtras(resultExtras);
//发送数据,优先级低的广播的数据可能被篡改
Log.d(TAG, “OrderReceiver” + charSequence);
Toast.makeText(context, “OrderReceiver” + charSequence, Toast.LENGTH_SHORT).show();
}
}
}
优先级较低的接收者
public class Low