Android BroadcastReceiver传值

1、定义两个常量:广播名和广播键值

    public static final  String ACTION_BONED = "ACTION_BONED";

    public static final String ACTION_BONED_DATA = "ACTION_BONED_DATA";

2、在Activity或Service中发送广播 

  Intent mIntent = new Intent(BluetoothBonedReceiver.ACTION_BONED);
  mIntent.putExtra(BluetoothBonedReceiver.ACTION_BONED_DATA, sb.toString());
  sendBroadcast(mIntent);

3、定义广播接收器

 private BroadcastReceiver bonedReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();

            if(BluetoothBonedReceiver.ACTION_BONED.equals(action)){
                String data = intent.getStringExtra(BluetoothBonedReceiver.ACTION_BONED_DATA);
                Message msg = new Message();
                msg.obj = data;
                handler.sendMessage(msg);
            }
        }
    };

4、注册广播

   IntentFilter intentFilter = new IntentFilter();
   // 监视蓝牙关闭和打开的状态
   intentFilter.addAction(BluetoothBonedReceiver.ACTION_BONED);
   registerReceiver(bonedReceiver, intentFilter);

5、注销广播

 unregisterReceiver(bonedReceiver);

 

posted @ 2020-07-21 18:37  好学Ace  阅读(771)  评论(0编辑  收藏  举报