在 Android 6.0 (Marshmallow) 中,用户可以撤销特定的应用程序权限,即使是从应用程序内部授予该权限也是如此。我知道我可以检查权限ContextCompat.checkSelfPermission()
。但是,当用户撤销我的应用程序的某个权限时,有没有一种方法可以让我的应用程序收到通知,而无需重复检查ContextCompat.checkSelfPermission()
?也许是广播/意图或类似的东西?
预先感谢您的任何帮助。
如果您的应用需要危险权限,则每次执行需要该权限的操作时都必须检查您是否拥有该权限。用户始终可以自由撤销权限,因此即使应用程序昨天使用了某个权限,也不能假设它今天仍然拥有该权限。
要检查您是否拥有权限,请调用 ContextCompat.checkSelfPermission() 方法。例如,此代码片段显示如何检查活动是否有权写入日历:
// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
Manifest.permission.WRITE_CALENDAR);
如果应用程序具有权限,则该方法返回 PackageManager.PERMISSION_GRANTED,并且应用程序可以继续执行该操作。如果应用程序没有权限,该方法将返回 PERMISSION_DENIED,并且应用程序必须显式请求用户权限。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)