android学习笔记(二) 之 android工程文件分析

android工程文件分析:
 
 
  1. gen文件夹:保存自动生成的R.java文件,不需要改动。
    1. R.java: android工程中所有的资源信息(组件、图片、字符等等)都是由HashMap<Integer,Object>来存储的 key值就是R.java中的静态变量值 value就是相对应的各种对象信息(组件、图片、字符等等) 当工程被载入时,所有资源都被加载到HashMap中去(类似Spring将所有Bean放入HashMap中一样) 这样我们就可通过key值定位到相应的组件 资源加载的过程大致如下 1.解析res文件夹下的各种文件,如果是xml文件调用java反射机制解析成相应的对象; 2.由res文件夹下文档的目录层级结构来匹配R.java中相对应的静态变量名称,并取出变量值作为key值; 3.将步骤2中key值和步骤1中的value值放入到HashMap<Integer,Object>中. 而Context类中的getResource()方法实际上就是返回这个HashMap对象
    2. BuildConfig.java:编译配置。(android 4.2 才有提供)
  2. res文件夹:保存应用中的各种资源文件
    1. string.xml:该文件中声明了系统中使用的字符串常量。这样做有两个好处: (1) 降低了程序的耦合度 (2) android通过了特殊的方式来使用字符串,提高了程序运行效率
    2. main.xml:文件中声明了程序中用到的视图文件。 android 通过这种方法,将程序的表现层和控制层分开,降低程序的耦合度,提高了程序的可配置性。
  3. AndroidManifest.xml: 每个工程都有这样一个android工程的全局配置文件,工程中所有使用的组件(如Activity、Service、ContentProvider 和 Broadcast Receiver)
  4. assets文件夹:同 res 文件夹相同,用来保存资源文件,不同于res中资源的是,assets中通常保存的是原生的文件,如一个MP3文件,res中的资源可以通过R.java文件直接访问,而assets中的资源必须通过AssetManager类以二进制流的方式读取






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值