android应用开发之assets和raw的区别

 我来答
huanglenzhi
推荐于2016-03-19 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517179
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部
  android raw与assets区别
  *res/raw和assets的相同点:
  1.两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。

  *res/raw和assets的不同点:
  1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类。
  2.res/raw不可以有目录结构,而assets则可以有目录结构,也就是assets目录下可以再建立文件夹
  *读取文件资源:
  1.读取res/raw下的文件资源,通过以下方式获取输入流来进行写操作
  InputStream is = getResources().openRawResource(R.id.filename);
  2.(1)读取assets下的文件资源,通过以下方式获取输入流来进行写操作
  AssetManager am = null;
  am = getAssets();
  InputStream is = am.open("filename");
  (2)如果用Videoview来播放:
  VideoView.setVideoUri(Uri.parse("android.resource://" + getpackageName() + "/" + R.raw.movie));
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式