国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

關(guān)于android11,12權(quán)限問題Unable to decode stream: open failed: EACCES (Permission denied)

這篇具有很好參考價值的文章主要介紹了關(guān)于android11,12權(quán)限問題Unable to decode stream: open failed: EACCES (Permission denied)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

第一次發(fā)博客

這個問題是我在制作一款app時發(fā)現(xiàn)的,我本來想在一個textview中加入一個圖片

String picturePath = "your.jpg";
Bitmap bitmap = BitmapFactory.decodeFile(picturePath);
Drawable d = new BitmapDrawable(getResources(), bitmap);
textview.setCompoundDrawablesWithIntrinsicBounds(null, d, null, null);

但是總是報錯

E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/DCIM/Camera/IMG_20230129_123518.jpg: open failed: EACCES (Permission denied)

我在瀏覽了大多數(shù)關(guān)于這個問題的討論和官方文檔之后,他們無非就是給了這幾種辦法:

1.在Manfest.xml中添加這個

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>

結(jié)論:按你的需求添加讀寫權(quán)限,但manage是必須的

2.“在你的xml文件中添加一句話,所有問題都解決了”

android:requestLegacyExternalStorage="true"

這句話本身是片面的,如果這個應(yīng)用所在系統(tǒng)是在android10及以下,那么你加上這句話的確能解決問題,在android10以后,系統(tǒng)加了新的分區(qū)機(jī)制,具體可以看看官方的文檔

這句代碼的意思就是說將這個新的分區(qū)機(jī)制換成舊的,那么這個權(quán)限問題就不存在了,這顯然是治標(biāo)不治本

3.還有各種在java文件中申請權(quán)限的

String[] permission = {
                Manifest.permission.READ_EXTERNAL_STORAGE,
                Manifest.permission.WRITE_EXTERNAL_STORAGE
        };
ActivityCompat.requestPermissions(Mainactivity.this, permission, 1);

這種呢是屬于申請了一部分權(quán)限

4.我是小米手機(jī),有的打開了系統(tǒng)的“所有訪問權(quán)限”頁面,但是那里面沒有我的應(yīng)用,我也不知道為什么

5.解決方案

if (Environment.isExternalStorageManager()) {
    tv.setText("666");
    String picturePath = "/storage/emulated/0/DCIM/Camera/IMG_20230129_123518.jpg";
    Bitmap bitmap = BitmapFactory.decodeFile(picturePath);
    Drawable d = new BitmapDrawable(getResources(), bitmap);
    textview.setCompoundDrawablesWithIntrinsicBounds(null, d, null, null);
}else {
    Intent intent = new Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION);
    intent.setData(Uri.parse("package:" + this.getPackageName()));
    startActivity(intent);
        }

這樣直接跳轉(zhuǎn)到應(yīng)用的所有訪問權(quán)限頁面,同意就大功告成了文章來源地址http://www.zghlxwxcb.cn/news/detail-470016.html

到了這里,關(guān)于關(guān)于android11,12權(quán)限問題Unable to decode stream: open failed: EACCES (Permission denied)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 出現(xiàn)Unable to access Android SDK add-on list的問題怎么解決?

    出現(xiàn)Unable to access Android SDK add-on list的問題怎么解決?

    問題:第一次打開新下載好的Android Studio時出現(xiàn)以下錯誤提示框,顯示Unable to access Android SDK add-on list 解決:打開文件安裝位置,在目錄中找到目錄名為bin的文件夾,如圖所示: 雙擊打開bin目錄,找到idea.properties。有記事本打開,在最后一行添加 disable.android.first.run=true 保存即

    2024年02月17日
    瀏覽(32)
  • android studio開發(fā)——android11版本以上權(quán)限動態(tài)申請問題,包括文件讀寫、圖片、相機(jī)的調(diào)用

    用于android手機(jī)的升級,現(xiàn)在已經(jīng)是android13版本了,對于權(quán)限問題可能更加敏感了,前段時間開發(fā)發(fā)現(xiàn)之前的方法已經(jīng)不再適用于android11以后的版本了 讀寫權(quán)限申請最好是跳轉(zhuǎn)到設(shè)置中進(jìn)行才是最好了,下面我們開始進(jìn)行 首先是AndroidManifest.xml文件的權(quán)限 然后這里講解一下權(quán)

    2024年02月10日
    瀏覽(21)
  • Android問題記錄 - Unable to make field private final java.lang.String java.io.File.path accessible

    Android問題記錄 - Unable to make field private final java.lang.String java.io.File.path accessible

    最近一個Flutter項(xiàng)目有新需求,開發(fā)時一直是在iOS設(shè)備上運(yùn)行,花了幾天做完后運(yùn)行到Android設(shè)備測試,結(jié)果項(xiàng)目構(gòu)建失敗了。 Flutter: 3.7.11 Android Studio: 2022.2.1 Java: 17.0.6 Gradle: 7.4 Android Gradle Plugin (AGP): 4.1.3 項(xiàng)目構(gòu)建報錯日志: 報錯有點(diǎn)眼熟,根據(jù)以往開發(fā)經(jīng)驗(yàn),應(yīng)該是Gradle版本

    2024年02月04日
    瀏覽(20)
  • Android問題記錄 - Unable to make field private final java.lang.String java.io.File.path accessible(持續(xù)更新)

    Android問題記錄 - Unable to make field private final java.lang.String java.io.File.path accessible(持續(xù)更新)

    最近一個Flutter項(xiàng)目有新需求,開發(fā)時一直是在iOS設(shè)備上運(yùn)行,花了幾天做完后運(yùn)行到Android設(shè)備測試,結(jié)果項(xiàng)目構(gòu)建失敗了。 Flutter: 3.7.11 Android Studio: 2022.2.1 Java: 17.0.6 Gradle: 7.4 Android Gradle Plugin (AGP): 4.1.3 項(xiàng)目構(gòu)建報錯日志: 報錯有點(diǎn)眼熟,根據(jù)以往開發(fā)經(jīng)驗(yàn),應(yīng)該是Gradle版本

    2024年02月13日
    瀏覽(22)
  • Android ExternalStorage讀寫權(quán)限問題(Access to the path “/storage/emulated/0/...“ is denied)

    Android ExternalStorage讀寫權(quán)限問題(Access to the path “/storage/emulated/0/...“ is denied)

    現(xiàn)象: 從android10.0開始,不管manifest里是否添加讀寫權(quán)限,都不可以直接訪問內(nèi)部存儲路徑 為什么 1、因?yàn)楹芏郃pp在安裝以后,會在 /storage/emulated/0 下隨意創(chuàng)建各種文件/文件夾,導(dǎo)致手機(jī)內(nèi)部存儲目錄十分混亂,而且app卸載以后,這些文件不會被卸載掉,遺留垃圾文件,造成

    2024年02月14日
    瀏覽(28)
  • Android 11/12 app-lint 系統(tǒng)Update-API時Lint檢查問題

    Android 11/12 app-lint 系統(tǒng)Update-API時Lint檢查問題

    這種方式你可以其他博客也有 但是要每個類和方法都加上 @SuppressLint 太麻煩了 我才不要這樣呢 1. 打開 frameworks/base/Android.bp 文件 2. 搜索找到這個字段 metalava_framework_docs_args 3. 然后在最后面添加?? --api-lint-ignore-prefix xxxx 蕪湖 成功啦

    2024年02月11日
    瀏覽(33)
  • unable to access ‘https://github.com/***/‘: HTTP/2 stream 1 was not closed cleanly before end

    unable to access ‘https://github.com/***/‘: HTTP/2 stream 1 was not closed cleanly before end

    錯誤提示: 錯誤原因: 當(dāng)前git的網(wǎng)絡(luò)協(xié)議和github要求的不一致; 解決方法: 執(zhí)行上面指令后: .gitconfig中添加了http/1.1的協(xié)議,再提交試試;

    2024年02月03日
    瀏覽(20)
  • 關(guān)于picgo圖床報錯“unable to verify the first certificate“

    關(guān)于picgo圖床報錯“unable to verify the first certificate“

    關(guān)于picgo圖床報錯\\\"unable to verify the first certificate\\\" 編程上的疑難雜癥(一) 問題:本人picgo加github圖床上傳出現(xiàn)以下問題 \\\"message\\\": \\\"unable to verify the first certificate\\\"(無法驗(yàn)證第一證書) 問題分析: 圖床是github圖床,工具是picgo,為了可以順利訪問github用到steam++(Watt Toolkit)加速

    2024年02月11日
    瀏覽(191)
  • Android 藍(lán)牙權(quán)限(更新到 Android 12)

    https://developer.android.com/guide/topics/connectivity/bluetooth/permissions BLUETOOTH :訪問藍(lán)牙適配器的權(quán)限,用于執(zhí)行藍(lán)牙操作。 BLUETOOTH_ADMIN :管理藍(lán)牙適配器的權(quán)限,包括啟用/禁用藍(lán)牙、掃描設(shè)備和進(jìn)行配對等操作。 ACCESS_FINE_LOCATION 或 ACCESS_COARSE_LOCATION :訪問設(shè)備位置的權(quán)限。在 And

    2024年02月16日
    瀏覽(29)
  • 關(guān)于selenium.common.exceptions.NoSuchDriverException: Message: Unable to obtain...的處理

    參考兩位大佬的文章:代碼實(shí)現(xiàn)對selenium的驅(qū)動器WebDrive的配置_疏狂難除的博客-CSDN博客 selenium打開瀏覽器報錯成功解決selenium.common.exceptions.NoSuchDriverException: Message: Unable to obtain...-CSDN博客 直接上報錯: 參考兩位的文章后感覺報錯原因是尋找路徑失敗或沖突的問題。 因?yàn)檫\(yùn)行

    2024年02月04日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包