当前位置: 首页 > 知识库问答 >
问题:

AndroidMarshmallow--如何知道“永远不要再问”之前被检查过

法镜
2023-03-14

有没有合适的方法知道“永远不要再问”的许可?

===================================================================

我想防止用户在没有授予位置访问权限的情况下进入屏幕。

->检查权限

->如果:权限已经授予,注册更新位置。

->ELSE:未授予,用两个按钮显示授予权限的对话

PERMISSION_DENIED=>

requestLocation()=>

未授予权限=>

共有1个答案

云瑞
2023-03-14

如果:

  • 您以前已经请求过该权限,并且
  • 您没有权限(checkselfpermission()表示拒绝),并且
  • ShouldShowRequestPermissionRationale()返回false

然后用户已经勾选了“永不再问”。

 类似资料:
  • 我想阻止用户在没有授予位置访问权限的情况下进入屏幕。 因此,我将权限请求用作名为requestLocation()的函数,该函数在onResume()中调用。 requestLocation()内部 ->另一个按钮有助于退出应用程序。 当在onRequestPermissionsResult()中标记deny或grant时,将再次执行requestLocation()。 但在选中“永不再次显示”并

  • 我想知道,在调用之前,如何知道用户检查“Never ask Again”。 我已经通过了Android M-检查运行时权限-如何确定用户是否选中了“永远不要再问”?但还无法得到妥善的解决方案。 在此之前,请允许我解释一下我的动机。 null 我找不到区分两者的方法。

  • 我想请求android的许可。准许READ\u EXTERNAL\u存储,用于获取媒体数据。 但在请求该权限之前,我想通过选中“永不再次询问”复选框来了解该权限是否被用户阻止。 有没有正确的方法知道“永远不要再问”的许可? 所以如果我能理解“再也不显示”是否被点击。

  • 根据以下内容:http://developer.android.com/preview/features/runtime-permissions.html#编码应用程序可以检查运行时权限,并在尚未授予权限的情况下请求权限。这时将显示以下对话框: 如果用户拒绝了一个重要的权限,imo一个应用程序应该显示一个解释,为什么需要这个权限,以及拒绝有什么影响。该对话框有两个选项: 重试(再次请求权限) 拒绝

  • 我想知道“永远不要再问”复选框布尔标志存储在哪里,如何清除它的值?不一定是通过编程,而是手动--通过设置、命令或某种工具。尝试清除应用程序数据,卸载,卸载和清除,尝试手动切换权限开/关来回,甚至尝试为模拟器设置一个更新的Marshmallow图像,但没有运气!

  • 问题内容: 看过很多论坛,但没有找到答案…简单的东西,用@PostLoad注释的方法永远不会被调用…通过@EntityListeners添加了侦听器,但问题仍然存在。我正在使用基于SessionFactory的配置。 问题答案: 当使用基于基础的配置时,EJB3 注释不起作用,后期加载方法将永远不会被调用。 使用Hibernate的Interceptor或事件或基于基本的配置。