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));

时间: 2024-10-07 23:39:49

android raw与assets资源的相关文章

[转载] 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

android res与assets资源的区别

android应用可以将资源存储在两个目录:res和assets.其中res目录中的资源只能存储在相应的 子目录(如res/layout.res/values等)中,不能直接将资源存储在res目录中.assets目录中的 资源可以任意存放,也可以建立任意层次的子目录.res和assets资源的主要区别如下. 1.引用资源的方式不同 res目录中的所有资源都会在R类的相应子类中生成对应的int类型变量,需要使用这些变量 来引用资源.例如res/layout/main.xml是布局文件资源,会在R.

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

Android的xml/assets/raw资源使用具体解释

一.assets/xml/raw资源介绍 1.assets资源文件夹:assets文件夹下存放的资源代表应用无法直接訪问的原生资源,这些文件将原封不动的存储到设备上,不会被编译为二进制形式,訪问方式是通过文件名称而不是资源ID.应用程序通过AssetManager以的字节流的形式来读取资源文件.assets与res/raw的差别是assets支持随意深度的子文件夹.这些资源文件不会生成不论什么资源ID. Android应用訪问assets文件夹资源过程例如以下: (1)先在Activity中调用

Android的xml/assets/raw资源使用详解

一.assets/xml/raw资源介绍 1.assets资源目录:assets目录下存放的资源代表应用无法直接访问的原生资源,这些文件将原封不动的存储到设备上,不会被编译为二进制形式,访问方式是通过文件名而不是资源ID.应用程序通过AssetManager以的字节流的形式来读取资源文件.assets与res/raw的区别是assets支持任意深度的子目录,这些资源文件不会生成任何资源ID.Android应用访问assets文件夹资源步骤如下: (1)先在Activity中调用getAssets

#Android 里 raw和assets 文件夹的区别

以下是我通过整理网上与自己的经验所得. raw 和 assets 的相同点 它们会被原封不动的拷贝到APK中,而不会像其它资源文件那样被编译成二进制的形式. raw 和 assets 的不同点 它们在代码中的不同方式 : assets: InputStream assets = getAssets().open("xxxx"); raw: InputStream raw = getResources().openRawResource(R.raw.xxxx) assets下可以创建目录

Android res/raw vs assets

common: 1.两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制. difference: 1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename:assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类.2.res/raw不可以有目录结构,而assets则可以有目录结构,也就是assets目录下可以再建立文件夹 *读取文件资源: res/raw:InputStream is

Android学习--Assets资源文件读取及AssetManager介绍

APK安装过程 复制APK安装包到data/app目录下,解压并扫描安装包,把dex文件(Dalvik字节码)保存到dalvik-cache目录,并data/data目录下创建对应的应用数据目录,Android系统在sdcard上为每一个应用分配了存储路径:/sdcard/Android/data/$(应用的包路径),该路径可以通过 context.getExternalFilesDir 得到,一般应用卸载的时候,该目录也会随之被删除. Android资源文件分为两类: 第一种是res目录下存放

Android Studio增加assets目录、raw目录

assets与res/raw不同 assets目录是Android的一种特殊目录,用于放置APP所需的固定文件,且该文件被打包到APK中时,不会被编码到二进制文件. Android还存在一种放置在res下的raw目录,该目录与assets目录不同. 注意点: 1. assets目录不会被映射到R中,因此,资源无法通过R.id方式获取,必须要通过AssetManager进行操作与获取:res/raw目录下的资源会被映射到R中,可以通过getResource()方法获取资源. 2. 多级目录:ass