我想请求我的应用的覆盖权限,以便在其他应用上绘制。为此,我使用ACTION_MANAGE_OVERLAY_PERMISSION
Intent intent = new Intent(android.provider.Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + getPackageName()));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivityForResult(intent, 1234);
这很好用并显示相应的设置屏幕,但是在首次显示设置活动时调用onActivityResult
而在销毁时不调用onActivityResult
,因此我从未获得str.isdigit()
中的权限。我想念一下吗?
答案 0 :(得分:1)
这是因为您正在开始一项新任务。来自documentation
[...]如果您正在启动的活动使用singleTask启动模式,它将不会在您的任务中运行,因此您将立即收到取消结果。
如果删除
,它应该可以工作intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);