Non*_*ver 5 sdk android broadcast android-activity
我有这必须停止,直到接收到短信......一个简单的主要活动如何从启动方法MainActivity的范围内BroadcastReceiver的onReceive()方法?
有信号和等待吗?我是否可以通过待处理的内容Intent,或者如何实现此通信?
Emm*_*uel 10
从BroadcastReceiver到Activity的通信很敏感; 如果活动已经消失怎么办?
如果我是你,我会在Activity中设置一个新的BroadcastReceiver,它会收到一条CLOSE消息:
private BroadcastReceiver closeReceiver;
// ...
closeReceiver = new BroadcastReceiver() {
  @Override
  public void onReceive(Context context, Intent intent) {
  //EDIT: receiving parameters
  String value = getIntent().getStringExtra("name"); 
  //... do something with value
  finish();
  }
};
registerReceiver(closeReceiver, new IntentFilter(CLOSE_ACTION));
然后从SMS BroadcastReceiver您可以发出此操作:
Intent i = new Intent(CLOSE_ACTION);
i.putExtra("name", "value"); //EDIT: this passes a parameter to the receiver
context.sendBroadcast(i);
我希望这有帮助?
| 归档时间: | 
 | 
| 查看次数: | 10168 次 | 
| 最近记录: |