前言
在Android 6.0之前,开发Android应用程序的时,开发者需要使用什么权限只需要在AndroidManifest.xml文件中显示的声明即可。如下:
但是,在Android 6.0之后,Android对应用程序的权限进行了进一步的规范。分出来危险权限和一般权限,当我们需要危险权限的时候需要在运行时进行授权。这样做也有好处。对于一些应用用户的选择更多了。
权限分类
官方权限教程
当我们需要用到危险权限时,我们就需要动态的申请权限,那么危险权限有哪些呢?
危险权限
一般权限
对于常规的权限我们只需要在清单文件中注册即可,比如网络权限。
动态注册权限
如果您的应用需要危险权限,则每次执行需要这一权限的操作时您都必须检查自己是否具有该权限。用户始终可以自由调用此权限,因此,即使应用昨天使用了相机,它不能假设自己今天仍具有该权限。
要检查您是否具有某项权限,请调用ContextCompat.checkSelfPermission() 方法。例如,以下代码段显示了如何检查 Activity 是否具有在日历中进行写入的权限:
// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(