日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 8.0 中如何读取内部和外部存储以及外置SDcard

發布時間:2025/3/15 Android 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 8.0 中如何读取内部和外部存储以及外置SDcard 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近碰到詢問我這個讀取SDcard的問題, 很久沒有看這部分了,所以大致看了一下, 順便記錄一下。在Android 8.0上做了測試。

一般的Android App能讀取的存儲空間主要有三種:

  • app自己的私有目錄,也就是/data/data/《app 目錄》。
    讀寫這個目錄不需要單獨的權限。每個app只能讀寫自己的目錄,而不能讀寫其他app的目錄。 Android通過Seandroid對權限進行了管理。

  • /sdcard。
    這個其實是Android手機的internal storage。 也就是一般你買手機的時候, 說手機是64GB的存儲空間,就是說的這個地方。這個地方的讀寫需要申請權限。READ_EXTERNAL_STORAGE 是讀, WRITE_EXTERNAL_STORAGE 是寫, 有寫的權限就自動有讀的權限。 這個權限是正對整個/sdcard,不區分子目錄, 也就是說一旦你申請權限你可以對整個/sdcard上的所有文件和目錄有操作權限。這個權限的管理會顯示再settings里相應的app permission里。

  • 外置sdcard
    這個對應的是你放入手機sdcard插槽的microSD卡。 有時候也叫removable storage。 Android里無法通過申請權限來獲取讀寫的權利。 這一點和上面說的2不同。 因此,如果需要獲取寫權限, 需要用戶指定特定的目錄單獨授權。這里舉個簡單的例子。 如果外置sdcard的路徑是/mnt/extsdcard,然后上面有兩個目錄a和b, 那么你可以讓用戶授權你寫/mnt/extsdcard/a, 但是你還需要讓用戶再單獨授權你寫/mnt/extsdcard/b, 也就是要授權兩次。 具體的實現方法, 就不多說了, google再github上給了個例子, 其中的wiki頁面有比較詳細的描述。

    特別要說明的是, 由于這個沒有對應的android permission, 所以如果你得到授權以后, 對應的目錄路徑不會顯示再settings中的app permission。 相反, 它會顯示再app storage里,用戶可以在那里revoke對app的授權(同樣, 也是指定目錄)。這個我感覺其實不好, 因為這本質上也是權限問題, 應該都放在app permission里。
  • 總結

    以上是生活随笔為你收集整理的Android 8.0 中如何读取内部和外部存储以及外置SDcard的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。