上QQ阅读APP看书,第一时间看更新
3.3 资源
在Android层次结构中,资源扮演着重要的角色。Android支持字符串、位图以及其他很多种类型的资源。每一种资源的语法、格式以及存放的位置,都会根据其类型的不同而不同。一般来讲共有三种类型的资源文件:XML文件、位图文件(图像)和raw文件(声音等)。
Android工程目录中,用于存放资源文件的有两个文件夹,分别为res和assets。其中res文件夹不支持深度子目录,其中的资源最终将被打包到编译后java文件中,可以直接通过R资源类访问,利用率较高;而assets中存放的资源是用于打包到应用程序中的静态文件,这些文件不会被编译,最终会直接部署到目标设备中,可以使用任意深度的子目录进行存储。assets文件夹中的文件不能直接通过资源类R读取,只能使用流的形式读取,其利用率相对较低。
Android的资源编译器AAPT(Android Asset Packaging Tool)会依照资源所在的子目录及其格式对其进行编译。