关于appcompat_v7兼容包的详细说明
1、appcompat_v7包的由来?
appcompat_v7是Google提供的向下兼容包,是针对API level 7(Android2.1)及以上版本所开发的,其作用是为了让兼容低版本API(minSdkVersion>7)的应用可以使用高版本API的功能和效果。主要是可以使用API level 11(Android3.0)的新特性,例如对ActionBar、SearchView、PopupMenu等控件的支持,这些控件都是在Android3.0后引入的,如果你的应用是需要兼容低版本API,那么为了在低版本的设备上可以使用这些控件的效果,就必须在你的工程中使用appcompat_v7兼容包。
2、appcompat_v7包所在位置和相关文件介绍?
appcompat_v7包的相对路径位于sdk\extras\android\support\v7(sdk指你的Android SDK所在文件夹,我的绝对路径是D:\Dev_Software\Android\sdk\extras\android\support\v7),可以看到如图下appcompat文件夹即appcompat_v7,v7目录下其他文件夹如cardview、gridlayout等,是v7支持库提供的其他兼容包,这些兼容包都是一些jar文件和资源文件。v7包是依赖于v4包的,和v4不同点在于,v4包将许多功能集中于同一个jar文件,而谷歌为了低版本的兼容性,就会将新版本出现的新的特性更新到v7支持库中,导致v7包中有许多的jar文件。因此,在你的工程导入v7包时,需要注意,避免导入不需要的功能。打开appcompat文件夹下的.project文件,可以看到appcompat_v7这个依赖库的实际名字为android-support-v7-appcompat



3、关于eclipse新建项目会自动创建appcompat_v7依赖库并报错的原因?
在ADT版本更新至22.6.0后,每次新建工程eclipse就会自动添加appcompat_v7。旧版ADT并不会自动添加appcompat_v7。ADT自动添加的appcompat_v7和sdk\extras\android\support\v7\appcompat路径下的兼容包实质是同一个依赖库。你可以打开eclipse工作区间,进入appcompat_v7所在目录下,打开.project文件,会发现.project文件的name标签值也是android-support-v7-appcompat。当你新建工程完成后,你的工程和ADT自动添加的appcompat_v7都出现了错误提示,可以手动修改你的工程和appcompat_v7目录下的project.propertiest文件中target的值为你所下载的最新sdk,例如target=android-23,修改完成后,手动选择Project-Clean,将你的工程和appcompat_v7依赖库clean下即可。
关于appcompat_v7兼容包的详细说明的更多相关文章
- Android MultiDex兼容包怎么使用?
在Android系统中安装应用的时候,需要对Dex进行优化,但由于其处理工具DexOpt的限制,导致其id的数目不能够超过65536个.而MultiDex兼容包的出现,就很好的解决了这个问题,它可以配 ...
- Google的兼容包问题【转】
转自:http://blog.sina.com.cn/s/blog_3e28c8a50101g14g.html 项目之前好好的,今天开Eclipse,,出错. 错误Error retrieving p ...
- Android SDK中的Support兼容包详解
这篇文章主要介绍了Android SDK中的Support兼容包详解,本文详细区分了Support Library的版本区别.各种Theme的概念和使用注意事项等内容,需要的朋友可以参考下 背景 来自 ...
- Eclipse导入 appcompat,design兼容包
从Android studio推出1.0正式版后,就一直在as上开发项目,但是最近要测试一个项目,是eclipse结构,导入as后,是各种报错信息,决定改成eclipse. 其中项目中用到了ppcom ...
- 在Eclipse添加Android兼容包( v4、v7 appcompat )
昨天添加Android兼容包,碰到了很多问题,在这里记录一下,让后面的路好走. 如何选择兼容包, 请参考Android Support Library Features(二) 一.下载Support ...
- Android兼容包multidex的开发和构建方法
在Android开发中,函数方法超过65k限制后,我们就常常会用到multidex分包解决,但是multidex的配置,对系统apk的构建.签名.打包复杂性大大的增加,严重的降低了构建效率.那这个问题 ...
- R语言-Knitr包的详细使用说明
R语言-Knitr包的详细使用说明 by 扬眉剑 来自数盟[总舵] 群:321311420 1.相关资料 1:自动化报告-谢益辉 https://github.com/yihui/r-ninja/bl ...
- android v7兼容包RecyclerView的使用(四)——点击事件的不同方式处理
前三篇文章 android v7兼容包RecyclerView的使用(三)--布局管理器的使用 android v7兼容包RecyclerView的使用(二) android v7兼容包Recycle ...
- ubuntu 13.04 64位安装32位兼容包
未安装32位兼容包,编译出现未找到指定目录下gcc命令,则安装兼容包:sudo apt-get install ia32-libs 若提示:不能安装,与相关软件冲突,则按如下安装: 在网上找到更新源, ...
随机推荐
- Oracle数据库概念和一些基本的SQL语句
1.数据 定义:描述事物的符号.例如:文本.音频.视频都是数据. 2.数据库 存放数据的仓库,存放在计算机中,按照一定格式存放,可以为用户共享. 3.数据库的发展阶段 1.网状数据库 2.层次数据库 ...
- 持续集成篇-- SonarQube代码质量管理平台的安装
视频教程:http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 IP:192.168.4.221 环境:CentOS 6 ...
- 14.如何解决使用webpack打包之后,font-awsome路径不对的问题,终极解决方法
问题描述: 使用webpack打包vue项目,使用font-awsome字体,发现打包之后,font-awsome图标不显示,报错为路径不对 看了下打包的路径,的确路径不对,打包之后font-awso ...
- JavaScript从入门到忘记
JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理. 一.如何编写 二.变 ...
- 原生封装ajax
01.声明一个全局变量 02.开始封装,判断参数 03.属性的var自定义 04.请求 01.请求行 02.请求头 03.请求发送 05.响应 01.事件监听onreadystatechange 02 ...
- Mybatis(七) mybatis的逆向工程的配置详解
还是觉得看书学习有意思~嘿嘿.今天把mybatis给结束掉. --WH 一.什么是逆向工程? 简单点说,就是通过数据库中的单表,自动生成java代码. Mybatis官方提供了逆向工程,可以针对单表自 ...
- spring的applicationContext.xml配置SessionFactory抛异常
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFa ...
- Struts 框架 之 Hello World
Struts HelloWorld 第一步 导jar包 commons-fileupload-1.2.2.jar [文件上传相关包] commons-io-2.0.1.jar [输入输 ...
- Java 多态透析 详细理解
1:什么是多态 一个对象的多种状态 (老师)(员工)(儿子) 教师 a =老钟; 员工 b =老钟; 2:多态体现 父类引用变量指向了子类的对象 Father f = new Son ...
- 95后实习生的远程办公体验(asp.net mvc\C#技术栈)
这个月我们做了一件别人看起来很疯狂的事情,就是让一批95后的实习生实行远程办公,效果还不错,于是写此文总结一下. 其实认真算算,我自己的远程工作经验有十年了吧,在北京工作的时候天气不好就申请在家办公, ...