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版本不需要依赖该库项目来使用新特性。
时间: 2024-10-22 11:13:25

80、Android Support v4、v7、v13的区别以及应用场景的相关文章

Android support V3 v7 v13的区别

简单翻译: V4用于1.6到更高的API使用. V7是2.1到更高的API使用,其中包含ACtionBar. V13是3.2到更高的API的使用. 原文: v4 Support Library This library is designed to be used with Android 1.6 (API level 4) and higher. It includes the largest set of APIs compared to the other libraries, inclu

Support v4 v7 v13: Android Support Library

Android Support v4:  这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认带有了. Android Support v7:  这个包是为了考虑照顾2.1及以上版本而设计的,但不包含更低,故如果不考虑1.6,我们可以采用再加上这个包,另外 注意,v7是要依赖v4这个包的,即,两个得同时被包含. Android Support v13:这个包的设计是为了android 3.2及更高版本的,一般我们都不常用,平板开发中能用到. Andro

Android Support v4、v7、v13的区别和应用场景

google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fragement,ViewPager等,下面,简单说明下这几个版本间的区别: Android Support v4:  这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认带有了.     Android Support v7:  这个包是为了考虑照顾2.1

16.(转) Android之Support v4、v7、v13的区别和应用场景

我们在项目中经常会碰到Android Support v4.v7和v13包兼容问题,所以有必要梳理下这些东西. google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fragement,ViewPager等,下面,简单说明下这几个版本间的区别: Android Support v4:  这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,ecl

Android Support v4,v7,v13之间的区别和应用场景

google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fragement,ViewPager等,下面,简单说明下这几个版本间的区别: Android Support v4: 这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认带有了. Android Support v7: 这个包是为了考虑照顾2.1及以上版本而

兔子--Android Support v4,Android Support v7,Android Support v13

Android Support Library package用于高版本的特性的向下兼容. (fragement,ViewPager) Android Support v4:  这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认 带有了. Android Support v7:  这个包是为了考虑照顾2.1及以上版本而设计的,但不包含更低,故如果不考虑1.6,我们可以采用 再加上这个包, 另外注意,v7是要依赖v4这个包的,即,两个得同时被包含. A

android.support.v4.app.Fragment vs android.app.Fragment 的区别

android.support.v4.app.Fragment vs android.app.Fragment 的区别 我开过平板相关应用,用了Fragment来处理.后来重新开发另外一个应用,直接引用了原来布局和代码, 我用的是android.support.v4.app.fragment居然死活通过.总是报错 “android.view.InflateException: Binary XML file line #7: Error inflating class fragment” 往下推

[转]android.support.v4.app.Fragment和android.app.Fragment区别

1.最低支持版本不同 android.app.Fragment 兼容的最低版本是android:minSdkVersion="11" 即3.0版 android.support.v4.app.Fragment 兼容的最低版本是android:minSdkVersion="4" 即1.6版 2.需要导jar包 fragment android.support.v4.app.Fragment 需要引入包android-support-v4.jar 3.在Activity

android.support.v4.app.Fragment 和 android.app.Fragment区别

今天在公司遇到一个android.app.Fragment 和android.support.v4.app.Fragment 的问题. (1)android.app.Fragment:兼容的最低版本是android:minSdkVersion="11"因此你的应用不能兼容3.0以下的应用. 可以使用<fragment>标签的,这点很重要,如果是用android.support.v4.app.Fragment的话,是不能是用<fragment>标签的,会抛出and