美图的笔试遇见了这道题,直接懵逼了……之前基本上没留意过这两个目录的区别,mark一下
assets目录下的文件不会被编译成二进制,直接被打包到apk中。assets目录中的文件不会在R.java中建立索引。assets目录下的文件需借助AssetManager访问。assets目录下可以建立自己的子目录。
res/raw目录下的文件(貌似是)会被编译成二进制。由于res目录下的所有东西都会在R.java中建立索引,可以用Resources.openRawResource方法读取raw中的文件。raw目录下不允许建立子目录。
参考→http://developer.android.com/guide/topics/resources/providing-resources.html
http://developer.android.com/reference/android/content/res/AssetManager.html