真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android開發(fā)-更"聰明"的申請權(quán)限方式

在Android6.0以后,很多權(quán)限需要?jiǎng)討B(tài)申請,只有在用戶點(diǎn)同意后,我們才能使用對應(yīng)API,因此,正確申請權(quán)限就顯得很重要。

我們提供的服務(wù)有:網(wǎng)站制作、網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、肅北ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的肅北網(wǎng)站制作公司

常用方式

通常我們使用這種方式來判斷權(quán)限狀態(tài):

private static boolean isGranted(final String permission) {
    return Build.VERSION.SDK_INT < Build.VERSION_CODES.M
            || PackageManager.PERMISSION_GRANTED
            == ContextCompat.checkSelfPermission(Utils.getApp(), permission);
}

但是用這種方式我們會(huì)碰到一個(gè)比較棘手的情況,當(dāng)用戶同意了某個(gè)權(quán)限后,然后用戶又在手機(jī)的系統(tǒng)設(shè)置的應(yīng)用權(quán)限中關(guān)閉了這個(gè)權(quán)限,此時(shí)我們并不能正確獲取到正確的權(quán)限狀態(tài)。

解決辦法

有可能Android團(tuán)隊(duì)意識到了這個(gè)問題,所以他們發(fā)布了一個(gè)新的權(quán)限檢查類:android.support.v4.content.PermissionChecker;

用這個(gè)類進(jìn)行權(quán)限的檢查就會(huì)正確返回,所以我們把權(quán)限校驗(yàn)的方法修改如下:

import android.support.v4.content.PermissionChecker;

private static boolean isGranted(final String permission) {
    return Build.VERSION.SDK_INT < Build.VERSION_CODES.M
            || PackageManager.PERMISSION_GRANTED
            == PermissionChecker.checkCallingOrSelfPermission(Utils.getApp(), permission);
}

這樣就會(huì)解決手機(jī)設(shè)置與用戶授權(quán)不一致的問題。

本文原始地址,如有更多疑問,請參考我的其它Android相關(guān)博客:我的博客地址


分享名稱:Android開發(fā)-更"聰明"的申請權(quán)限方式
地址分享:http://weahome.cn/article/gihoic.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部