关于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 若提示:不能安装,与相关软件冲突,则按如下安装: 在网上找到更新源, ...
随机推荐
- 亲测可行,AndroidStudio 究竟如何配置gradle
一.你不想看到的 Gradle Build Running 话说在天朝当程序员也是很不容易的,不管是查阅资料还是下载东西,很多时候你会发现自己上网姿势不对,当然对大多数程序员来说,这都不是事儿.这次重 ...
- mysql 修改表结构的字段名
alter table domains change STATUS status tinyint(1) not null;
- windows环境下,怎么解决无法使用ping命令
基本都是因为"环境变量"导致的,查看环境变量path在"Path"中追加"C:\Windows\System32"
- php变量双击选择无法选择$符号
创建/Data/Packages/User/PHP.sublime-settings文件,内容为 { "word_separators": "./\\()\&qu ...
- 【Android Developers Training】 89. 最大化的使用谷歌云消息(Google Cloud Messaging)
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- js 实现图片压缩并转换成base64(data:image/jpeg;base64)格式
<!DOCTYPE html> <html> <head> <!--by 0o晓月メ http://www.cnblogs.com/final-elysion ...
- DDD理论学习系列(9)-- 领域事件
DDD理论学习系列--案例及目录 1. 引言 A domain event is a full-fledged part of the domain model, a representation o ...
- Educational Codeforces Round 22.B 暴力
B. The Golden Age time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- 第二章:2.8 通过Django 在web页面上面输出 “Hello word ”
1. 第一步:配置 guest 目录下面的 settings.py 文件, 将 sign应用添加到 guest项目中. 2. 在 guest目录下面,打开 urls.py 文件,添加 要打开的路由文件 ...
- 快学Scala之特质
一个Scala类可以继承多个特质(trait), 特质可能会要求使用它们的类支持某个特定特性, 与Java接口不同, Scala特质可以给出这些特质的缺省实现. 要点如下: Scala中类只能继承一个 ...