成都网站建设设计

将想法与焦点和您一起共享

androidv4,android v4包

android studio怎样导入v4包

android studio导入v4包的方法:

创新互联主要从事网站制作、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务开封,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

1、进入 file-project structure

2、左边选择app

3、右边选择dependencies

4、左下角可以看到一个加号,点击选择Library dependency就可以看到可以导入的jar包,选择support-v4导入即可。

如何添加android v4包

找不到android-support-v4 包的解决办法,androidsupportv4

有时候在开发过程中,总是会遇到一些莫名奇妙的错误,或者在使用fragement和viewpage的时候,就会出现下面这个错误,如果出现找不到android-support-v4 包的时候,可以使用下面的方法进行添加:

Project-properties-Java Build Path-Libraries-Add External Jars中加入sdk目录下的extras/android/support/v4/android-support-v4.jar

(如果找不到,则需要用sdk manager下载android support package)

安卓Eclipse导入第三方library以后找不到android-support-v4

android support v4支持包要点分析,api介绍

本文出自zhh_happig的博客,谢谢

Android support v4这个包是为Android 1.6(API版本为4)及以上的版本设计的(从android-support-v4-24.2.0开始,V4包支持的最低版本是Android 2.3即API Level 9),该支持库可以让在旧版本 Android 平台上运行的应用,支持新版本平台推出的功能。

举个Fragment的例子说明一下,假设我们某个应用支持的最低版本是:minSdkVersion=8,但是应用中用到了android.app.Fragment类,而Fragment类是在Android 11的时候才开始加入的,那么当我们的应用运行在Android 11以下的手机就会出现问题,那么如何能让Fragment在低于11的手机上也能正常使用呢?我们需要引入android.support.v4包中android.support.v4.app.Fragment来替换掉原来用到的android.app.Fragment类,android.support.v4.app.Fragment和android.app.Fragment有一样的效果,但是它能在低于11的手机上正常使用,这就是support支持库提供的功能,能兼容低版本的Android平台。

android.support.v4包支持的最低版本是Android 4,v4的意思是就是支持最低版本是4,如果你要使用Fragment,最低版本只兼容到4了。

拿上面的例子来说:应用中的minSdkVersion=8,为了兼容低版本的手机,引入了android.support.v4包中android.support.v4.app.Fragment。当应用在不同版本手机运行,android.support.v4是怎样工作的呢?

a.当运行在Android版本是4-10手机上,手机Android框架没有提供Fragmeng提供的功能:则android.support.v4支持库会调用自身android.support.v4.app.Fragment;

b.当运行在Android版本是11及以上的手机上,手机Android框架提供了Fragmeng提供的功能:则android.support.v4支持库会调用手机Android框架android.app.Fragment。

也就是说,如果应用调用其中一个支持类的方法,则支持库的行为将取决于运行应用的手机的Android 版本。如果手机Android框架提供必要的功能,则支持库将通过调用手机Android框架执行任务。如果应用在旧版本的 Android 上运行,且手机Android框架未提供所需的功能,则支持库自身可能会尝试提供相应的功能或什么都不做。无论是哪一种情形,应用通常都不需要检查其在哪一版本的 Android 上运行,而是通过支持库执行检查并选择适当的行为。

还有一些android.support.v4中类,比如ViewPager等,不管在Android那个版本,都没有这个类,所以要用到ViewPager,就必须引用android.support.v4包了。

注:随着系统的迭代Android 1.6的设备已经很少了,官方在Support Library 24.2.0版本的时候移除了对Android 2.2(API Level 8)及以下版本的支持,所以从Android Support v4 24.2.0开始,V4包支持的最低版本是Android 2.3即API Level 9

我们可以发现android-support-v4后面都跟着版本号:比如android-support-v4-23.0.0 (对应Android Api Level 23),如果不清楚这个版本号,在开发中也会带来很多问题。

最常见的问题就是已经引入了android-support-v4包,但是某个类或者某个方法却找不到,这个原因应该就是版本号不对了。

比如我们在targetSdkVersion 23的时,用到android.support.v4.content.PermissionChecker这个类来检查权限 ,但是引入了android-support-v4-22.2.1.jar后,却找不到PermissionChecker类,原因就是PermissionChecker是23.0.0版本才加入的,所以引入android-support-v4-23.0.0.jar就行了。

遇到这种问题,可以去 Android官方中文网站 找到对应的类或方法,看看它们加入的版本:added in version,然后在引入对应的support包

注:在android-support-v4-24.2.0及之后的版本中,为了增强效率和减小APK的大小起见,Android将android-support-v4包从一个独立的依赖包拆分成v4 compat library、v4 core-utils library、v4 core-ui library、v4 media-compat library和v4 fragment library这5个包,考虑到V4的向后兼容,你在工程中依赖V4这个依赖包时默认是包含拆分后的5个包的,但为了节省APK大小,建议在开发过程中根据实际情况依赖对应的V4包,移除不必要的V4包。

v4 compat library 

兼容一些 Framework API,如 Context.getDrawable() 和 View.performAccessibilityAction()等,在AS中的依赖方式如下:

compile 'com.android.support:support-compat:24.2.1'

v4 core-utils library

提供一系列核心的工具类,如 AsyncTaskLoader 和 PermissionChecker,在AS中的依赖方式如下,按自己需求选择合适版本:

compile 'com.android.support:support-core-utils:24.2.1'

core-ui library

提供一系列核心的 UI,如 ViewPager、 NestedScrollView,在AS中的依赖方式如下:

compile 'com.android.support:support-core-ui:24.2.1'

v4 media-compat library

android.media 兼容库,包括 MediaBrowser 和 MediaSession,在AS中的依赖方式如下:

compile 'com.android.support:support-media-compat:24.2.1'

v4 fragment library

跟fragment相关部分,v4 fragment library这个子库依赖了其他4个子库,所以我们一旦依赖这个库就会自动导入其他4个子库,这跟直接依赖整个support-v4效果类似,在AS中的依赖方式如下:

compile 'com.android.support:support-fragment:24.2.1'

拆包并不一定代表能够真的解决效率和减小APK的大小问题,V4包拆分后的5个子包有依赖关系。即拆包之后,要用到某个子包的API时,可能还得依赖其它的子包,这也是有坑的地方。当我们编译没有问题,运行出现Do not find class之类的错误时,一定要看看是不是子包之间的依赖关系造成的,如果是引入相应的子包。出现这个依赖问题,再加上版本可能出现问题,对于新手来说,比较棘手,建议新手全部导入。

以上文章内容,是本人工作中的总结,供大家参考,有误的地方还请指正。

到如了v4怎么android.support.annotation

新版本的v4包有android.support.annotation的包,有的话很幸运使用这些注解的话就不会出错,但是旧版本的没有这个包就很悲剧了,比如我.....

现总结一下方法解决这些问题:

1、更新SDK

2、替换v4包

3、导入android-support-annotations.jar的jar。这个jar可以从百度上下载,也可以从sdk安装目录下(E:\InstallPath\sdk\extras\android\support\samples\annotations)找到,没有的话就去下载吧,这个也有新的和旧的区分

Android_support_v4和android_support_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及以上版本而设计的,但不包含更低,故如果不考虑1.6,我们可以采用再加上这个包,另外注意,v7是要依赖v4这个包的,即,两个得同时被包含。

Android Support v13 :这个包的设计是为了android 3.2及更高版本的,一般我们都不常用,平板开发中能用到。

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

高版本的 SDK里提供了新的东西,如果你用了这些东西开发应用,然后你又想支持低版本SDK的机器的时候你就需要把新的东西直接导入你的apk里面,这样你的apk装到低版本的机器里去也能运行。

Android Support v4 是最早(2011年4月份)实现的库。用在Android1.6 (API lever 4)或者更高版本之上。它包含了相对V4, V13大的多的功能。

如:Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabAtrip,Loader,FileProvider

等。

详细API 参考

Android Support v7: 这个包是为了考虑Android2.1(API level 7)

及以上版本而设计的,但是v7是要依赖v4这个包的,也就是如果要使用,两个包得同时

被引用。

v7支持了Action Bar。

Android Support v13:这个包的设计是为了android 3.2及更高版本的,一般我们都不常用,平板开发中能用到


网页标题:androidv4,android v4包
网页地址:http://chengdu.cdxwcx.cn/article/dsgpiod.html