【安卓】系统弹窗TYPE_SYSTEM_ALERT,权限错误

旧版本可以使用的系统弹窗

WindowManager.LayoutParams.TYPE_SYSTEM_ALERT

在6.0版本以后似乎不能用了,会报错没有权限。

permission denied for this window type

于是,替换使用为

WindowManager.LayoutParams.TYPE_TOAST

这个普通toast弹窗没有任何权限的要求,但对话框背景是普通白色。

因为是例题,先酌情使用吧。

另外,不设置

alertDialog.getWindow().setType

方法时,会直接崩溃,提示为activity是否在运行的错误。

我的猜测是,AlertDialog在广播中不能自定义创建。

使用系统弹窗,免去了费时的UI操作,即可在广播中建立弹窗。

经试验后,确实如此。

你可能感兴趣的:(安卓)