我有这种奇怪的行为。
在我的应用程序运行时添加权限后,我正在检查并测试所有案例。
我的MainActivity中有请求代码。
所以,在我设置Never Ask Again并拒绝ACCESS_FINE_LOCATION的授予权限之后,如果我按下菜单按钮然后重新启动应用程序(应用程序将调用onSpesume of MainActivity我猜),那么屏幕是黑色的,除了一个矩形部分位于屏幕中间,大小不一。 (不是AlertDialog大小)
这里有一些截图:
普通屏幕
按下菜单后再打开,可以打开正常状态或以下状态:
或
这很奇怪,以前有人有这个吗?
感谢您的回答!
答案 0 :(得分:0)
如果没有看到代码,就很难给出非常准确的答案。
请求权限时,如果用户选择“永不再询问”,则拒绝请求权限响应。我是GUESSING(由于缺少代码),你的应用程序依赖于授予的权限来继续加载UI并执行更多代码,如果权限被拒绝,它将无法执行。在请求运行时权限时,您需要处理所有可能的响应。
如果获得许可:很高兴 如果权限被拒绝:检查您是否应该显示权限原理。这意味着您向用户显示一条消息,说明您需要该权限的原因。
如果shouldShowRationale为真:它意味着'永不再问'未被检查。显示消息,然后再次请求许可。
如果应该显示基本原理是错误的:它表示“永不再询问”已被选中,如果需要,您应该将用户引导至应用程序设置以启用权限。