前言:

    今天還是圍繞著最近面試的一個(gè)熱門話題Android 6.0權(quán)限適配來總結(jié)學(xué)習(xí),其實(shí)Android 6.0權(quán)限適配我們公司是在今年5月份才開始做,算是比較晚的吧,不過現(xiàn)在Android 6.0以上設(shè)備越來越多了,所以Android 6.0 權(quán)限適配是必不可少的工作,這里主要介紹一下我們公司是如何做Android 6.0權(quán)限適配的。

Android 6.0以下非運(yùn)行時(shí)權(quán)限:

  根據(jù)上面博客我們很清楚的知道,Android的權(quán)限其實(shí)就是為了程序之間更加的安全的訪問,所以權(quán)限有等級(jí)之分,比如:Normal 低風(fēng)險(xiǎn)權(quán)限 、Dangerous  高風(fēng)險(xiǎn)權(quán)限等,雖然有這種安全意識(shí),但是這些權(quán)限只會(huì)在安裝的時(shí)候被詢問一次,一旦安裝之后,如果app申請(qǐng)了高風(fēng)險(xiǎn)權(quán)限的話,而且大部分用戶在安裝的時(shí)候很少去關(guān)注這些權(quán)限列表,再加上很多Android市場(chǎng)都有靜默安裝的功能用戶更加感知不到任何權(quán)限提示,就這樣app就有可能會(huì)在后臺(tái)做一些對(duì)用戶帶來傷害的事情。如下圖所示:

Android6.0運(yùn)行時(shí)權(quán)限:

  鑒于6.0之前的版本權(quán)限管理相對(duì)不那么安全,所以Android 6.0 采用新的權(quán)限模型,只有在需要權(quán)限的時(shí)候,才告知用戶是否授權(quán),是在runtime時(shí)候授權(quán),而不是在原來安裝的時(shí)候 ,同時(shí)默認(rèn)情況下每次在運(yùn)行時(shí)打開頁(yè)面時(shí)候,需要先檢查是否有所需要的權(quán)限申請(qǐng)。這樣的用戶的自主性提高很多,比如用戶可以給APP賦予攝像的權(quán)限,也可以使用權(quán)限。

Android 6.0權(quán)限適配:

1.)不進(jìn)行適配造成的現(xiàn)象

   先看下app module的build.gradle配置