亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Android 如何實(shí)現(xiàn)動(dòng)態(tài)申請(qǐng)權(quán)限

瀏覽:56日期:2022-09-25 18:43:43

OverView

今天在復(fù)習(xí)的時(shí)候,突然復(fù)習(xí)到我們的相機(jī)操作,但是對(duì)于相機(jī)操作,對(duì)于我來(lái)說(shuō)比較復(fù)雜的是對(duì)于權(quán)限的操作。所有我們需要對(duì)我們的相機(jī)操作進(jìn)行一些筆記的整理,加深記憶。

開(kāi)發(fā)環(huán)境

Android Studio 3.6

Android 11(R)

該筆記使用 java

權(quán)限申請(qǐng)的基礎(chǔ)知識(shí)

學(xué)習(xí)自:GOOGLE ANDROID DEVELOPERS

對(duì)于我們所需要申請(qǐng)的權(quán)限我們需要進(jìn)行如下的操作。

我們需要將所有需要申請(qǐng)的權(quán)限添加到App/src/main/AndroidManifest.xml文件中。

但是權(quán)限也是分為常規(guī)的權(quán)限和危險(xiǎn)的權(quán)限的,對(duì)于常規(guī)的權(quán)限我們的只需要在AndroidManifest.xml文件中添加就可以使用了,但是對(duì)于一些被視為危險(xiǎn)權(quán)限的,我們就需要讓用戶來(lái)選擇時(shí)候同意申請(qǐng)。

接下來(lái)我們就看一下如何操作我們的危險(xiǎn)權(quán)限吧。

如何判斷是否申請(qǐng)了權(quán)限

按照國(guó)際慣例我們先看一下源代碼:

private boolean checkPermission() { //first we need check this Drive has? CAMERA Permission if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.CAMERA}, CHECK_PERMISSION_CAMERA); return false; } else return true;}

這里我們使用我們的相機(jī)權(quán)限作為實(shí)例。

首先我們需要判斷我們的使用有相機(jī)權(quán)限,可以使用,申請(qǐng)完成后我們需要進(jìn)行權(quán)限申請(qǐng)。我們將我們所需要的權(quán)限申請(qǐng),并且傳入我們的指定代碼。這里我的CHECK_PERMISSION_CAMERA的值為1。

然后就是我們需要重寫(xiě)我們的系統(tǒng)方法onRequestPermissionsResult

這個(gè)方法可以很好的來(lái)判斷用戶時(shí)候同意了我們的權(quán)限申請(qǐng)。

首先來(lái)看看我們的源代碼:

@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { super.onRequestPermissionsResult(requestCode, permissions, grantResults); switch (requestCode) { case CHECK_PERMISSION_CAMERA: { if (grantResults.length > 0 && permissions[0].equals(PackageManager.PERMISSION_GRANTED)) {Toast.makeText(this, 'The camera permission application wes successful!', Toast.LENGTH_SHORT).show();dispatchTakePictureIntent(); } else {Toast.makeText(this, 'The camera permission application wes failed!', Toast.LENGTH_SHORT).show(); } } break; }}

這個(gè)就是我判斷用戶時(shí)候同意我們申請(qǐng)相機(jī)權(quán)限的全部代碼了。

這個(gè)也是非常的簡(jiǎn)單,我們通過(guò)在申請(qǐng)的時(shí)候傳入的識(shí)別代碼來(lái)判斷,如果代碼通過(guò)后我們需要通過(guò)驗(yàn)證grantResults的長(zhǎng)度和權(quán)限數(shù)組中的索引位置來(lái)判斷用戶有沒(méi)有同意我們的權(quán)限申請(qǐng)。如果同意了我們就可以進(jìn)行下一步操作。

這部分代碼還是非常的簡(jiǎn)單的。關(guān)于動(dòng)態(tài)權(quán)限的申請(qǐng)還是非常的簡(jiǎn)單的。

以上這篇Android 如何實(shí)現(xiàn)動(dòng)態(tài)申請(qǐng)權(quán)限就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Android
相關(guān)文章:
主站蜘蛛池模板: 伊人久久99 | 亚洲一区不卡 | 高清欧美日韩一区二区三区在线观看 | 99久久一香蕉国产线看观看 | 国产v精品成人免费视频400条 | 国产成人精品天堂 | 女同志freelesvoices | 91精品天美精东蜜桃传媒免费 | 中文精品久久久久国产网站 | 国产精品特黄一级国产大片 | 欧美日韩顶级毛片www免费看 | 国产成人精品视频 | 久久精品亚洲一级毛片 | 黄在线观看在线播放720p | 婷婷亚洲天堂 | 久久精品国产72国产精福利 | 免费久久一级欧美特大黄 | 成人a毛片视频免费看 | 成视频年人黄网站免费视频 | 精品一区二区久久久久久久网站 | 国产精品国产色综合色 | 视频免费1区二区三区 | 91香蕉视频免费在线观看 | 国产成人精品视频 | 色综合图 | 国产小视频在线播放 | 日本护士69xxxx免费 | 一级全黄生活片 | 亚洲成人第一页 | 亚洲精品在线免费 | 色婷婷久久 | 尤物视频免费在线观看 | 亚洲国产欧美日韩精品小说 | 成人午夜精品久久久久久久小说 | 免费国外性视频网站 | 香蕉久久夜色精品国产2020 | 亚洲一卡二卡三卡 | 日韩不卡一二三区 | 九九九九热精品免费视频 | 国产片自拍 | 欧美日韩一区二区在线视频播放 |