当用户手动更改权限时处理系统更改

时间:2016-11-27 18:12:29

标签: android android-permissions android-lifecycle android-configchanges

我想知道是否有办法检测用户是否手动切换了我的应用的LOCATION PERMISSION。

似乎打开/关闭LOCATION PERMISSION会重启我的应用程序。

如何处理?

我试图在我的活动的onSave / RestoreInstanceState调用中添加断点,但它们没有被调用。

如果有人能指出我正确的方向,我将非常感激。谢谢!

1 个答案:

答案 0 :(得分:1)

  

我想知道是否有办法检测用户是否手动切换了我的应用的LOCATION PERMISSION。

不是实时的。用户下次运行您的应用时,当您检查是否拥有该权限时,您会发现自己没有。通常,您处理此案例的方式与之前用户从未授予您权限的情况相同(例如,这是用户在安装后第一次运行您的应用程序)。

  

似乎打开/关闭LOCATION PERMISSION会重启我的应用程序。

没有。如果用户禁用先前授予的权限,则会终止您的进程。但是,当发生这种情况时,您处于后台(例外:multi-window)。但是,当您的应用程序在后台时,由于任何原因(例如,用户安装了任务杀手),您的流程可以终止,因此特别担心权限撤销,因为通常不需要触发器。

  

是否有类似configChanges的权限?

没有