一、简介
在 Android 开发中,为了使用高版本API的新特性,需要添加额外的包来使用这些新特性,这就是 Android Support 包
二、分类
- Android Support v4: 这个包是为了照顾Android 1.6及以上版本而设计的,在开发中,默认都会使用到这个包
- Android Support v7: 这个包是为了照顾Android 2.1及以上版本而设计的,但是不能兼容低版本 Android 系统,如果开发中不考虑 1.6 ,可以采用这个包。另外要注意的是,v7 包是依赖 v4 包的,即引入 v7 包的话要同时引入 v4 包
- Android Support v13: 这个包是为了照顾Android 3.2及以上版本而设计的,一般开发中不会用到,平板开发可能会用到
三、额外问题
1、查看V4包的源码
在大部分开发中,开发工具会自动将 v4.jar 引入到项目中,但是无法查看 v4.jar 的源码
解决方案:
将SDK中的 /extras/android/support/v4
目录下的jar包添加到工程中,引入源码。
2、eclipse 开发中自动生成 appcompat_v7 库项目报错
在上面有说到 v7 包是为了照顾Android 2.1及以上版本,使其可以使用高API的新特性
假设在 eclipse 中创建项目时最低 sdk(Minimum Required Sdk)选择了 api14
以下,而编译版本(Compile Sdk)又选择了高于 api14
的版本,此时为了能使用新特性,eclipse会自动创建 appcompat_v7 库项目,并将其引用到项目中
很多初学者在此时很容易出现错误,eclipse 找不到资源,原因是因为目标sdk(Target Sdk)低于 sdk 环境中的最高版本(即你自己下载的sdk的最高的版本)
解决方案:
-
方案一:将目标sdk(Target Sdk)设为已下载的最高版本,此时依旧会自动创建 appcompat_v7 库项目,并将其引用到项目中,但是不会再报错了
-
方案二:将最低 sdk(Minimum Required Sdk)设为高于
api14
的版本。这时, eclipse 不会创建 appcompat_v7 库项目,因为api14
以上的android版本不需要依赖该库项目来使用新特性。