Android显示AlertDialog接收广播

时间:2018-05-30 16:16:36

标签: android broadcastreceiver alertdialog

我希望在飞机开启或关闭时收到广播接收器后显示一个AlertDialog。这可以通过显示透明活动然后显示我的对话框来实现。但是,我只想要一个没有任何活动的alertDialog(类似于TrueCaller的对话框或类似内容)。实现这一目标的最佳方法是什么。

DataReceiver.class

@Override
public void onReceive(Context context, Intent intent) {
        Intent mainIntent = new Intent(context,MainActivity.class);
        mainIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        mainIntent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
        mainIntent.putExtra("value","Airplane mode toggled");
     context.startActivity(new Intent(context,MainActivity.class));

        Toast.makeText(context, "Airplane mode toggled", Toast.LENGTH_SHORT).show();
}

MainActivity.class

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);Color.parseColor("#01000000")));

    AlertDialog.Builder alertDialog = new 
    AlertDialog.Builder(MainActivity.this);
    alertDialog.setTitle("Airplane mode Toggled");
    alertDialog.setMessage("Works");
    alertDialog.show();
}

清单:

<receiver
        android:name=".DataReceiver"
        android:enabled="true"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.AIRPLANE_MODE"/>
        </intent-filter>
</receiver>

0 个答案:

没有答案