广播接收器onReceive打开对话框

4

我正在使用BroadcastReceiver构建一个安卓应用,我想在onReceive开始时展示一个对话框。我希望在手机上展示对话框(无论用户在哪里,都要显示对话框,就像在收到WhatsApp消息时弹出的对话框一样)。

我该如何实现?

谢谢!


这是完整的示例 http://stackoverflow.com/a/41137562/4344659 - Sanjeev Sangral
1个回答

5
如果您想在 BroadcastReceiver 的 onReceive 中显示对话框,您可以启动一个带有警报对话框的透明活动,并且永远不要调用 setContentView() 方法。该活动将具有透明视图,仅显示警报对话框。 来源: 在系统重启后的广播接收器中显示警报对话框 有许多类似的帖子涉及此主题。请参见下面的问题以获取示例代码和其他评论:
  1. 如何在BroadcastReceiver中弹出AlertDialog?可以吗?

  2. 如何从BroadcastReceiver类中触发警报对话框?

  3. 如何从Android广播接收器显示对话框?

  4. 如何从BroadcastReceiver设置Alertbox?

希望这些能有所帮助。


我有问题,我有两个活动,并启动第二个活动(新的而非主要的),但它会启动主要的活动,我不知道原因,新的活动有类和XML文件,且可以正常运行,但我不知道为什么接收器启动了主要的活动...我这样做:Intent i = new Intent(context, BTNotifierWarning.class); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); | 但BTNotifierWarning不是主要的活动... - user1840196
嘿,对于我之前的评论感到抱歉。我以为它与这个问题有关,所以要求你编辑它。如果你将问题分开提问会更好。针对你在评论中提到的新问题,应该提出一个新的问题。从这个问题中删除那段代码,因为它可能会让其他人感到困惑。 - Shobhit Puri
好的,谢谢!这是新问题:http://stackoverflow.com/questions/17906466/how-to-load-activity-from-broadcastreceiver-onreceive - user1840196

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接