Android代码如何访问Res目录下的内容

如何访问平时APK文件Res目录下的内容呢? 如果直接访问Apk下的assets目录可以使用AssetManager类处理,而需要访问res/raw这样的文件夹怎么办呢? 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_number 
    package_name is your package name as listed in your AndroidManifest.xml. For example com.example.myapp 
    id_number is the int form of the ID.
    The easiest way to construct this form is
    Uri uri = Uri.parse("android.resource://com.example.myapp/" + R.raw.my_resource");
    
    
  • android.resource://package_name/type/name 
    package_name is your package name as listed in your AndroidManifest.xml. For example com.example.myapp 
    type is the string form of the resource type. For example, raw or drawable . name is 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 is
    Uri uri = Uri.parse("android.resource://com.example.myapp/raw/my_resource");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android应用程序的res文件夹下的layout子目录下的XML文件无法被找到时,可能有以下几种原因和解决方法。 1. 检查文件路径:首先确保XML文件位于正确的目录下。layout子目录通常位于res文件夹下,如果放错位置,可能无法被找到。 2. 检查文件名和后缀:确认XML文件的命名是否正确,包括大小写和后缀名。XML文件应该以".xml"结尾,否则系统可能无法正确解析它。 3. 清理和重新构建项目:有时候项目中的资源文件可能损坏或无法正常排序,可以尝试进行"Clean project"和"Rebuild project"操作,以重新生成R.java文件和资源索引。 4. 检查XML文件内容:在layout子目录下的XML文件中可能存在语法错误或其他问题,可以尝试在其它XML解析器中验证XML文件的正确性,如通过使用在线的XML验证工具。 5. 检查Gradle文件:如果使用了Gradle构建工具,可以检查相关的配置文件(如build.gradle)是否正确配置了资源目录和文件路径。 6. 检查IDE设置:如果使用的是Android Studio等集成开发环境,可以检查相关的IDE设置,确保资源目录和文件路径正确配置。 7. 检查依赖库:如果在项目中使用了依赖库,需要确保依赖库的XML文件也位于正确的layout子目录下,并且已正确引用。 如果以上方法仍无法解决问题,可能需要更详细的错误信息和相关代码来诊断和解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值