80、Android Support v4、v7、v13的区别以及应用场景
一、简介
在 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版本不需要依赖该库项目来使用新特性。
80、Android Support v4、v7、v13的区别以及应用场景的更多相关文章
- Android Support v4,v7,v13
Android Support v4 是最早(2011年4月份)实现的库.用在Android1.6 (API lever 4)或者更高版本之上.它包含了相对V4, V13大的多的功能. 例如:Frag ...
- Android Support v4\v7\v13和AndroidX理解【转载】
为什么要用support库呢? 因为在低版本Android平台上开发一个APP时,想使用高版本才有的功能,此时就需要使用Support来支持兼容. 1. android-support-v4 comp ...
- 【转】Android Support v4、v7、v13的区别和应用场景
google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fr ...
- 16.(转) Android之Support v4、v7、v13的区别和应用场景
我们在项目中经常会碰到Android Support v4.v7和v13包兼容问题,所以有必要梳理下这些东西. google提供了Android Support Library package 系列的 ...
- Android Support v4、v7、v13的区别和应用场景
N久未做android了,以前做的时候,2.2才刚出来,现在android都更新到了4.3了,而从前一段时间android各个sdk版本市场占有率 来看,1.6.2.1还是占有一定的市场,故在有些时候 ...
- Android Support v4、v7、v13、v14、v17的区别和应用场景
Android Support v4.v7.v13.v14.v17的区别和应用场景 本文链接:https://blog.csdn.net/Aquarius_Seven/article/detail ...
- android.support.v4与Android.support.v7
Android提供了android.support.v4和android.support.v7两个库,以便低版本API可以使用高版本API的功能. Fragment(碎片)类,是在Android 3. ...
- android.support.v4.app.Fragment vs android.app.Fragment 的区别
android.support.v4.app.Fragment vs android.app.Fragment 的区别 我开过平板相关应用,用了Fragment来处理.后来重新开发另外一个应用,直接引 ...
- import android.support.v4或者import android.support.v7提示导入错误解决办法
转自: http://blog.csdn.net/forandever/article/details/37655139 在使用Eclipse开发andriod程序时,程序中提示import and ...
随机推荐
- web前后端框架整理
nodejs <——> Express <———> bootstrap <———> angularJS <————> jquery <—————& ...
- ion-header-bar
ion-header-bar 指令声明一个标题栏元素,标题栏总是位于屏幕顶部 它有两个同级的可选属性 align-title:设置标题文字的对齐方式.允许值:left|right|center no- ...
- RAF(RandomAccessFile)类
作用:读取文件 /** * */ package com.io.file; import java.io.File; import java.io.IOException; import java.i ...
- git .gitignore
github 搜索 .gitignore 外层为语言使用的,里层为编译器使用的,分别添加到自己的文件中. 目前Androidstudio使用gradle作为项目管理,.idea .iml 文件都 ...
- Map练习错误
private Student findStuByNumber(String number) { Student student=null ; for(Stude ...
- S3C2416 看门狗
原理:看门狗自己有个硬件计数器,看门狗开启后,计数器就开始计数,当计数为0时触发,触发事件有两个:系统复位和中断,可设置屏蔽. 在计数器计数到0之前,程序可以重新设置计数器中的数值,称之喟狗.计数器的 ...
- php捕捉来自搜索引擎的用户IP地址时间和访问路径
刚才看demo看到很有意思的地方记录一下 $zz_page=$_SERVER['REQUEST_URI']; $zz_name=$_SERVER['HTTP_USER_AGENT']; $zz_ip= ...
- 偶然翻出很久很久以前写的一款sqlmap UI,有点年头了
- Android proguard 详解
本文转载于:http://blog.csdn.net/banketree/article/details/41928175 简介 Java代码是非常容易反编译的.为了很好的保护Java源代码,我们往往 ...
- bind绑定多个事件切换
eg: $(function(){ $("div").bind('mouseover mouseover',function(){ $(this.tog ...