如何在安装应用程序时默认启用屏幕覆盖权限。
现在我面临着一些问题,当捕获图像时询问运行时的权限,一些设备不允许它打开屏幕覆盖设置对话框。从用户的角度来看,他们不知道为什么会显示对话框以及他们做了什么。
当打开覆盖设置屏幕时,某些应用程序会自动启用屏幕覆盖权限。
下面我使用代码。
if (!Settings.canDrawOverlays(this)) {
Intent myIntent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
startActivityForResult(myIntent, 101);
}
此代码直接打开覆盖设置屏幕。他们展示了所有应用程序的列表。
我的要求是显示权限特定的应用程序或启用覆盖权限,而不需要用户交互。
确实需要……
发布于 2016-12-19 20:01:37
在intent中发送您的包名,就像前面提到的in the documentation。
输入:可选地,意图的数据URI可以指定应用程序包名,以直接调用特定于包名的管理图形用户界面。例如"package:com.my.app“。
所以,像这样做:
if (!Settings.canDrawOverlays(this)) {
int REQUEST_CODE = 101;
Intent myIntent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
myIntent.setData(Uri.parse("package:" + getPackageName()));
startActivityForResult(myIntent, REQUEST_CODE);
}
发布于 2016-10-31 13:46:02
在清单中添加以下代码
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
发布于 2016-10-31 14:18:02
如果您使用的是高于6.0版本的设备,请按照以下步骤操作
转到设置 -->选择应用程序->再次选择应用程序中的设置图标->选择在其他应用程序上绘制
选择您的应用程序并启用在其他应用程序上绘制的权限
https://stackoverflow.com/questions/40337131
复制相似问题