Android基础篇 BroadcastReceiver广播中弹出Activity或者Dialog BroadcastReceiver系列

Posted 彭老希

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android基础篇 BroadcastReceiver广播中弹出Activity或者Dialog BroadcastReceiver系列相关的知识,希望对你有一定的参考价值。

一、androidManifest.xml文件中添加悬浮窗权限

 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

(1)Dialog弹窗

(a) 在onReceiver()中弹出对话框(警告框),必须设置对话框的类型,并添加相应权限。

dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);

(b)动态注册广播

(2)Activity活动

(a)在onReceiver()方法中启动活动,必须添加

   		Intent intent = new Intent(this,XXXXXActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);

(b)动态注册广播 or 静态注册广播

总结

Android是不允许Activity或Dialog凭空出现的,一个Activity的启动必须要建立在另一个Activity的基础之上,也就是以此形成的返回栈。

而Dialog则必须在一个Activity上面弹出(除非是System Alert类型的Dialog)。

以上是关于Android基础篇 BroadcastReceiver广播中弹出Activity或者Dialog BroadcastReceiver系列的主要内容,如果未能解决你的问题,请参考以下文章

Android基础&进阶

Android之WIFI-基础篇NativeDaemonConnector分析

Android基础篇

Android热修复基础篇

Android热修复基础篇

android基础篇学习心得