如何實現(xiàn)Android工程內(nèi)嵌資源文件?
南京北大青鳥張府園校區(qū)的編程老師介紹:Android軟件一般處理大的資源通過sdcard比如在線下載資源到sdcard,而apk中內(nèi)嵌資源或二進制文件時一般使用下面的兩種方法:
方法一
res/raw目錄下存放,比如cwj.dat一個二進制文件,我們可以讀取可以直接 InputStream is=context.getResources().openRawResource(R.raw.cwj);
方法二
工程根目錄下的assets文件夾中存放,比如assets/cwj.dat 這樣我們使用下面的代碼
AssetManager am = context.getAssets();
InputStream is = am.open(cwj.dat);
特別值得注意的是:Google的Android系統(tǒng)處理Assert有個bug,在AssertManager中不能處理單個超過1MB的文件,不然會報異常具體數(shù)值大家可以測試下傳個稍大的文件,我們在兩年前的文章中有提到,而第一種raw沒這個限制可以放個4MB的Mp3文件沒問題。