如何實(shí)現(xiàn)Android工程內(nèi)嵌資源文件?
南京北大青鳥(niǎo)張府園校區(qū)的編程老師介紹:Android軟件一般處理大的資源通過(guò)sdcard比如在線下載資源到sdcard,而apk中內(nèi)嵌資源或二進(jìn)制文件時(shí)一般使用下面的兩種方法:
方法一
res/raw目錄下存放,比如cwj.dat一個(gè)二進(jìn)制文件,我們可以讀取可以直接 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有個(gè)bug,在AssertManager中不能處理單個(gè)超過(guò)1MB的文件,不然會(huì)報(bào)異常具體數(shù)值大家可以測(cè)試下傳個(gè)稍大的文件,我們?cè)趦赡昵暗奈恼轮杏刑岬剑谝环Nraw沒(méi)這個(gè)限制可以放個(gè)4MB的Mp3文件沒(méi)問(wèn)題。