Android運(yùn)行時(shí)權(quán)限

Android 的權(quán)限機(jī)制并不是什么新鮮事物近尚,從系統(tǒng)的第一個(gè)版本開(kāi)始就已經(jīng)存在了把跨。但其實(shí)之前Android的權(quán)限機(jī)制在保護(hù)用戶安全和隱私等方面起到的作用比較有限谁鳍,尤其是大家都離不開(kāi)的軟件。非常容易 “店大欺客”稍途。為此阁吝,Android 開(kāi)發(fā)團(tuán)隊(duì)在Android 6.0系統(tǒng)中引用了運(yùn)行時(shí)權(quán)限這個(gè)功能,從而更好的保護(hù)用戶的安全和隱私晰房。


Android權(quán)限有上百個(gè)求摇,怎么區(qū)分哪些是普通權(quán)限,哪些是危險(xiǎn)權(quán)限殊者。下面的圖片列舉了Android中所有的危險(xiǎn)權(quán)限与境,一共是9組25個(gè)權(quán)限。

完整的權(quán)限列表請(qǐng)?jiān)L問(wèn)Manifest.permission ?|? Android Developers

注意:表格中每一個(gè)危險(xiǎn)權(quán)限都屬于一個(gè)權(quán)限組猖吴,我們?cè)谶M(jìn)行運(yùn)行時(shí)權(quán)限處理的是權(quán)限名摔刁,但是用戶一旦同意授權(quán)了,那么該權(quán)限所對(duì)應(yīng)的權(quán)限組中所有的其他權(quán)限也會(huì)同時(shí)被授權(quán)海蔽。


接下來(lái)通過(guò)一個(gè)小Demo來(lái)演示一下

上面Demo已經(jīng)將運(yùn)行時(shí)權(quán)限的完整流程覆蓋了共屈,下面具體分析一下

第一步就是先判斷用戶是不是已經(jīng)給我們授權(quán)了,借助的是ContextCompat.checkSelfPermission()方法党窜。checkselfPermission()方法接收兩個(gè)參數(shù)拗引,第一個(gè)是context,這個(gè)沒(méi)什么好說(shuō)的幌衣,第二個(gè)參數(shù)是具體的權(quán)限名稱矾削,比如打電話的權(quán)限名。然后我們使用方法的返回值和PackageManager.PERMISSION_GRANTED作比較豁护,相等就說(shuō)明用戶已經(jīng)授權(quán)哼凯,不等就表示用戶沒(méi)有授權(quán)。

如果已經(jīng)授權(quán)了就簡(jiǎn)單了楚里,直接去執(zhí)行撥打電話的邏輯操作就行了断部,如果沒(méi)有授權(quán),就調(diào)用ActivityCompat.requestPermissions()方法向用戶申請(qǐng)授權(quán)班缎,requestPermissions()方法接受3個(gè)參數(shù)蝴光,第一個(gè)要求的是Activity實(shí)例她渴,第二個(gè)參數(shù)是一個(gè)string數(shù)組,第三個(gè)是請(qǐng)求碼虱疏,只要是唯一值就行惹骂,這里傳入了1苏携;

調(diào)用完requestPermissions()方法之后做瞪,系統(tǒng)會(huì)彈出一個(gè)權(quán)限申請(qǐng)的對(duì)話框,然后用戶可以選擇同意或者拒絕我們的權(quán)限申請(qǐng)右冻,不論那種結(jié)果装蓬,都會(huì)回調(diào)onRequestPermissionsResult()方法中,而授權(quán)的結(jié)果則會(huì)封裝在grantResults參數(shù)中纱扭,這里只判斷一下最后的授權(quán)結(jié)果牍帚,如果用戶同意就call,不同意就放棄操作乳蛾,并彈出一個(gè)Toast暗赶。


參考資料:第一行代碼第二版第七章

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市肃叶,隨后出現(xiàn)的幾起案子蹂随,更是在濱河造成了極大的恐慌,老刑警劉巖因惭,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件岳锁,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蹦魔,警方通過(guò)查閱死者的電腦和手機(jī)激率,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)勿决,“玉大人乒躺,你說(shuō)我怎么就攤上這事〉退酰” “怎么了嘉冒?”我有些...
    開(kāi)封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)表制。 經(jīng)常有香客問(wèn)我健爬,道長(zhǎng),這世上最難降的妖魔是什么么介? 我笑而不...
    開(kāi)封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任娜遵,我火速辦了婚禮,結(jié)果婚禮上壤短,老公的妹妹穿的比我還像新娘设拟。我一直安慰自己慨仿,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布纳胧。 她就那樣靜靜地躺著镰吆,像睡著了一般。 火紅的嫁衣襯著肌膚如雪跑慕。 梳的紋絲不亂的頭發(fā)上万皿,一...
    開(kāi)封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音核行,去河邊找鬼牢硅。 笑死,一個(gè)胖子當(dāng)著我的面吹牛芝雪,可吹牛的內(nèi)容都是我干的减余。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼惩系,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼位岔!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起堡牡,我...
    開(kāi)封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤抒抬,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后悴侵,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瞧剖,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年可免,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了抓于。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡浇借,死狀恐怖捉撮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情妇垢,我是刑警寧澤巾遭,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站闯估,受9級(jí)特大地震影響灼舍,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜涨薪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一骑素、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧刚夺,春花似錦献丑、人聲如沸末捣。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)箩做。三九已至,卻和暖如春妥畏,著一層夾襖步出監(jiān)牢的瞬間邦邦,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工咖熟, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留圃酵,地道東北人柳畔。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓馍管,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親薪韩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子确沸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • Android系統(tǒng)權(quán)限 Android 是一個(gè)權(quán)限分隔的操作系統(tǒng),其中每個(gè)應(yīng)用都有其獨(dú)特的系統(tǒng)標(biāo)識(shí)(Linux 用...
    ZHLeo閱讀 7,408評(píng)論 3 16
  • 引言:運(yùn)行時(shí)權(quán)限是版本升級(jí)的一個(gè)更新點(diǎn)俘陷,學(xué)起來(lái)挺容易的罗捎,寫一篇筆記感覺(jué)真費(fèi)勁。時(shí)間:2017年04月18日23:4...
    JustDo23閱讀 2,436評(píng)論 0 3
  • 現(xiàn)在很多城市的小朋友在三歲以上就開(kāi)始學(xué)習(xí)溜旱冰,很多時(shí)候捉偏,孩子卻有了開(kāi)始倒得,沒(méi)有堅(jiān)持,參加訓(xùn)練也是三天打魚兩天曬網(wǎng)的...
    謎秋閱讀 874評(píng)論 0 0
  • 天塌下來(lái)了 雖然人們給我說(shuō) 天塌下來(lái)有高個(gè)子頂著 可是我的天還是 塌下來(lái)了夭禽。
    梁運(yùn)生閱讀 167評(píng)論 0 0
  • 在北方還是料峭嚴(yán)寒讹躯,冰封大地之時(shí)菩彬,素有小江南之稱的陜西漢中卻是四季分明,春天的腳步早已悄悄的來(lái)臨潮梯。 立春過(guò)后骗灶,暖陽(yáng)...
    靜月荷閱讀 463評(píng)論 0 7