在你的app需要使用到dangerous permission时,在每次使用需要权限耳朵操作前,都必须检查你是否是否拥有该权限。
可调用ContextCompat.checkSelfPermission()方法进行权限检查。
下面这段代码显示了怎么检查这个Activity是否用写日历的权限。
/ Assume thisActivity is the current activity int permissionCheck = ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.WRITE_CALENDAR);如果app拥有这个权限,这个方法将会返回 PackageManager.PERMISSION_GRANTED,app可以处理该操作,反之该方法将返回
PERMISSION_DENIED,然后app必须明确的向用户请求权限。
请求权限的时候要向用户解释app为什么需要这个权限。权限要简洁明了的介绍。
为了帮助发现用户在哪里可能需要一个解释。Android提供了一个方法,
shouldShowRequestPermissionRationale()。这个方法返回true如果用户在app请求权限前拒绝了这个权限。如果用户选择了拒绝了授予该权限且勾选了Don't ask again ,返回false。