1. 程式人生 > >Android assets/ 與 res/raw/

Android assets/ 與 res/raw/

Android Developer 中的介紹

訪問原始檔案
儘管並不常見,但您的確有可能需要訪問原始檔案和目錄。如果確有需要,則將您的檔案儲存在 res/ 中不起作用,因為從 res/讀取資源的唯一方法是使用資源 ID。您可以改為將資源儲存在 assets/ 目錄中。

儲存在 assets/ 目錄中的檔案沒有資源 ID,因此您無法通過 R 類或在 XML 資源中引用它們。您可以改為採用類似普通檔案系統的方式查詢 assets/ 目錄中的檔案,並利用 AssetManager 讀取原始資料。

不過,如果只需要讀取原始資料(例如視訊檔案或音訊檔案)的能力,則可將檔案儲存在 res/raw/ 目錄中,並利用 openRawResource()

讀取位元組流。

相同與差異

目錄 是否被壓縮 資源ID 是否有目錄結構
assets
res/raw
res/other
  • 共同點
    都不會壓縮,不會被編譯成二進位制

  • 不同點
    1.assets/ 目錄 中的檔案沒有資源 ID,因此您無法通過 R 類或在 XML 資源中引用它們
    2.assets/ 目錄 可以有目錄結構

其他

assets類似檔案的訪問方式。raw類似res的訪問方式。