1. 程式人生 > >【Android常用】Broadcast的onReceive方法中彈出AlertDialog

【Android常用】Broadcast的onReceive方法中彈出AlertDialog

問題描述

在廣播接收器(BroadcastReceiver)的onReceive(Context context, Intent intent)方法中彈出一個AlterDialog

方案一

美中不足之處:

  • 二、7.0及以上無法執行

方案二

public class TestActivity extends Activity {

    public static final String ACTION = "cn.com.servyou.secondlinecode.MY_BROADCAST";

    @Override
    protected void onCreate
(Bundle savedInstanceState) { super.onCreate(savedInstanceState); IntentFilter filter = new IntentFilter(ACTION); registerReceiver(receiver, filter); } BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { new
AlertDialog.Builder(TestActivity.this) .setTitle("dialog") .setMessage("received in MyBroadcastReceiver!") .setPositiveButton("確定", null) .create() .show(); } }; }

美中不足:

  • 動態註冊廣播接收器(BroadcastReceiver),需要確保接收器已註冊
  • 彈窗只能顯示在當前app視窗(無法全域性)