res/raw/ 和 assets/ 的区别

特性res/raw/assets/
访问方式通过 R.raw.filename 引用通过 AssetManager.open("filename") 访问
生成 R 文件资源 ID✅ 会生成 R.raw.xxx,可直接在代码中引用❌ 不会生成 ID,需要用字符串路径访问
适合文件类型小视频、音频、字体、配置文件(无需路径遍历)大量复杂文件、子目录结构、多语言文件等
支持子目录❌ 不支持(只能平铺)✅ 支持子目录
打包时是否压缩一般不会被压缩(可被直接读取)会被压缩(默认压缩非媒体类文件)
适合用法媒体文件,直接通过 VideoView, MediaPlayer 使用

更多推荐