Android獲取儲存路徑API的說明

2021-07-10 15:13:51 字數 1613 閱讀 3539

android手機的儲存分為幾種不同的型別,不同的廠家定製過程中稍有不同,下面列出在紅公尺1上的測試結果,對進行說明。

先看下此手機系統儲存的j顯示情況,以及df顯示的檔案系統掛載情況

通過對比,可以得出下面的結論:

1 機身內建儲存器emmc被劃分成若干個不同的分割槽,並掛載到不同的路徑下:

/system  系統主目錄,這裡是系統核心檔案的目錄,其下主要是系統檔案、lib庫、框架庫檔案等

/data       資料目錄,使用者的應用檔案便安裝在/data/data目錄下

/cache    系統快取目錄

在系統的儲存管理中,系統儲存便概指上面這些分割槽的綜合,這些分割槽都是ext4型別的分割槽。

2 機身外接儲存器/dev/block/vold/179:8儲存掛載在/storage/sdcard1位置,vfat檔案系統

在系統的儲存管理中,手機儲存便指的是這一部分儲存

3 機身擴充套件sd卡/dev/block/vold/179:97 掛載在/storage/sdcard0位置,vfat檔案系統

在開發android應用中,由於不同的資料有不同的需要,儲存到不同的路徑下,因而系統提供了不同的api來獲取相應的路徑。大約有12個呼叫,下面的**顯示了這些呼叫 ,並在後面註明了執行結果。

/*

* 此測試裝置的外設定sd掛載位置為/storage/sdcard0

* 機身系統儲存為/data

* 機身資料儲存為/storage/sdcard1

*/log.d(tag,getobbdir().getabsolutepath()); ///storage/sdcard0/android/obb/

log.d(tag, environment.getexternalstoragestate()); //mounted

log.d(tag, environment.getexternalstoragedirectory().getabsolutepath()); ///storage/sdcard0

log.d(tag, environment.getdatadirectory().getabsolutepath()); ///data

log.d(tag, environment.getdownloadcachedirectory().getabsolutepath()); ///cache

log.d(tag, environment.getexternalstoragepublicdirectory("").getabsolutepath()); ///storage/sdcard0

log.d(tag, environment.getrootdirectory().getabsolutepath()); ///system

獲取儲存過程內容 SQL server

查詢儲存過程 內容 select name 儲存過程名稱,definition 儲存過程內容 from sys.sql modules as m inner join sys.all objects as o on m.object id o.object id where o.type p and...

android 獲取外部儲存裝置路徑

通常的獲取sdcard的路徑,我們會用environment.getexternalstoragedirectory 但是當我們的裝置有多個外部儲存裝置,environment就顯得捉襟見肘了。那麼有什麼方法可以解決這種問題?看下面的方法,通過反射的方式獲取外部儲存裝置的路徑,完美解決 nice。p...

Android外部儲存 內部儲存路徑獲取大全

package com.mufeng.toolproject.utils import android.content.context import android.os.environment created by mufeng on 2017 3 11.public class director...