原文:android.resource://这个Uri你知道吗
如何访问平时APK文件Res目录下的内容呢? 如果直接访问Apk下的assets目录可以使用AssetManager类处理,而需要访问res/raw这样的文件夹怎么办呢? 这里Android123可以告诉大家APK在安装时已经解压缩,部分资源存放在/data/data/package_name/这里, 比如我们想访问res/raw/android123.cwj文件,可以使用android.resource://package_name/" + R.raw.android123 这个Uri,其中package_name是你工程的包名。
完整的处理代码为 Uri uri = Uri.parse("android.resource://com.android123.Sample/raw/android123.cwj"); 即可使用工程res/raw目录下的文件了。
原文链接 :http://hi.baidu.com/zhoutianyang/blog/item/1a4d56df5979551f485403de.html
A Uri object can be used to reference a resource in an APK file. The Uri should be one of the following formats:
android.resource://package_name/id_numberpackage_nameis your package name as listed in your AndroidManifest.xml. For examplecom.example.myappid_numberis the int form of the ID.
The easiest way to construct this form isUri uri = Uri.parse("android.resource://com.example.myapp/" + R.raw.my_resource");android.resource://package_name/type/namepackage_nameis your package name as listed in your AndroidManifest.xml. For examplecom.example.myapptypeis the string form of the resource type. For example,rawordrawable.nameis the string form of the resource name. That is, whatever the file name was in your res directory, without the type extension. The easiest way to construct this form isUri uri = Uri.parse("android.resource://com.example.myapp/raw/my_resource");
浙公网安备 33010602011771号