update ui from broadcast receiver

南笙酒味 提交于 2019-12-06 09:04:11

One way to update your Activity from a BroadcastReciever is to create a BroadcastReciever in MainActivity:

  private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
     @Override
     public void onReceive(Context context, Intent intent) {

    // Extract data included in the Intent
    // String message = intent.getStringExtra("message");
    //update the TextView
  }
};

Reigester this BroadcastReciever in onResume:

  this.registerReceiver(mMessageReceiver, new IntentFilter("some_unique_name"));

And unregiester onPause:

  this.unregisterReceiver(mMessageReceiver);

In AlarmReceiver just use:

private void updateYourActivity(Context context) {

  Intent intent = new Intent("some_unique_name");

  // put whatever data you want to send, if any
  // intent.putExtra("message", message);

  // send broadcast
  context.sendBroadcast(intent);
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!