MinSdkVersion, targetSdkVersion, target API level的区别
来源:互联网 发布:淘宝摄影服务 编辑:程序博客网 时间:2024/04/27 15:12
在AndroidMenifest.xml中,常常会有下面的语句:
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="10" android:maxSdkVersion="10" />
在default.properties中,会看到下面的语句: target=android-10
如果是使用Eclipse的话,还可能会看到这样的警告:Attribute minSdkVersion (4) is lower than the project target API level (10)
那么,这里面的minSdkVersion、targetSdkVersion、maxSdkVersion、target API level四个数值到底有什么区别?minSdkVersion与maxSdkVersion比较容易理解,就是在安装程序的时候,如果目标设备的API版本小于minSdkVersion,或者大于maxSdkVersion,程序将无法安装。一般来说没有必要设置maxSdkVersion。
targetSdkVersion相对复杂一些,如果设置了此属性,那么在程序执行时,如果目标设备的API版本正好等于此数值,他会告诉Android平台:此程序在此版本已经经过充分测,没有问题。不必为此程序开启兼容性检查判断的工作了。也就是说,如果targetSdkVersion与目标设备的API版本相同时,运行效率可能会高一些。但是,这个设置仅仅是一个声明、一个通知,不会有太实质的作用,比如说,使用了targetSdkVersion这个SDK版本中的一个特性,但是这个特性在低版本中是不支持的,那么在低版本的API设备上运行程序时,可能会报错:java.lang.VerifyError。也就是说,此属性不会帮你解决兼容性的测试问题。你至少需要在minSdkVersion这个版本上将程序完整的跑一遍来确定兼容性是没有问题的。
在default.properties中的target是指在编译的时候使用哪个版本的API进行编译。
综上,上面的四个值其实是作用于不同的时期:target API level是在编译的时候起作用,用于指定使用哪个API版本(SDK版本)进行编译。minSdkVersion和maxSdkVersion是在程序安装的时候起作用,用于指定哪些版本的设备可以安装此应用。targetSdkVersion是在程序运行的时候起作用,用于提高指定版本的设备上程序运行体验。这四个数值在程序编译时也没有严格的检查,比如说,你可以将minSdkVersion设置的比maxSdkVersion还大,他会自动忽略掉错误的maxSdkVersion。
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="10" android:maxSdkVersion="10" />
在default.properties中,会看到下面的语句: target=android-10
如果是使用Eclipse的话,还可能会看到这样的警告:Attribute minSdkVersion (4) is lower than the project target API level (10)
那么,这里面的minSdkVersion、targetSdkVersion、maxSdkVersion、target API level四个数值到底有什么区别?minSdkVersion与maxSdkVersion比较容易理解,就是在安装程序的时候,如果目标设备的API版本小于minSdkVersion,或者大于maxSdkVersion,程序将无法安装。一般来说没有必要设置maxSdkVersion。
targetSdkVersion相对复杂一些,如果设置了此属性,那么在程序执行时,如果目标设备的API版本正好等于此数值,他会告诉Android平台:此程序在此版本已经经过充分测,没有问题。不必为此程序开启兼容性检查判断的工作了。也就是说,如果targetSdkVersion与目标设备的API版本相同时,运行效率可能会高一些。但是,这个设置仅仅是一个声明、一个通知,不会有太实质的作用,比如说,使用了targetSdkVersion这个SDK版本中的一个特性,但是这个特性在低版本中是不支持的,那么在低版本的API设备上运行程序时,可能会报错:java.lang.VerifyError。也就是说,此属性不会帮你解决兼容性的测试问题。你至少需要在minSdkVersion这个版本上将程序完整的跑一遍来确定兼容性是没有问题的。
在default.properties中的target是指在编译的时候使用哪个版本的API进行编译。
综上,上面的四个值其实是作用于不同的时期:target API level是在编译的时候起作用,用于指定使用哪个API版本(SDK版本)进行编译。minSdkVersion和maxSdkVersion是在程序安装的时候起作用,用于指定哪些版本的设备可以安装此应用。targetSdkVersion是在程序运行的时候起作用,用于提高指定版本的设备上程序运行体验。这四个数值在程序编译时也没有严格的检查,比如说,你可以将minSdkVersion设置的比maxSdkVersion还大,他会自动忽略掉错误的maxSdkVersion。
- MinSdkVersion, targetSdkVersion, target API level的区别
- MinSdkVersion, targetSdkVersion, target API level的区别
- MinSdkVersion, targetSdkVersion, target API level的区别
- MinSdkVersion, targetSdkVersion, target API level的区别(转)
- (转)MinSdkVersion, targetSdkVersion, target API level的区别
- android MinSdkVersion, targetSdkVersion, target API level的区别 .
- minSdkVersion、targetSdkVersion、maxSdkVersion、target API level 的区别
- minSdkVersion,targetSdkVersion,maxSdkVersion,target API level
- minSdkVersion maxSdkVersion targetSdkVersion target 的区别
- @Target api ,minSdkVersion, targetSdkVersion等
- 从头学android_minSdkVersion、targetSdkVersion、maxSdkVersion、target API level的区别
- 【Android基础】minSdkVersion maxSdkVersion targetSdkVersion target 的区别
- Android开发中minSdkVersion、targetSdkVersion、maxSdkVersion和project.properties中target API level
- build target,minSdkVersion,targetSdkVersion,maxSdkVersion区别
- minSdkVersion、maxSdkVersion、targetSdkVersion、target四个属性区别
- minSdkVersion、targetSdkVersion、targetApiLevel的区别
- minSdkVersion、targetSdkVersion、targetApiLevel的区别
- minSdkVersion、targetSdkVersion、targetApiLevel的区别
- VS2005下SDL的编译链接问题
- uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z)
- LINUX USB 系统(1)
- solr查询不使用query analyzer中文分词的问题解决
- 嵌入式开发资料集锦
- MinSdkVersion, targetSdkVersion, target API level的区别
- 产生时间字符串组
- 六、矩阵按键(4*4)
- TCP/IP详解学习笔记(1)-基本概念
- 未来3个月计划
- OnEraseBkGnd与OnPaint的联系是什么? 转自:http://www.cppblog.com/Walker/articles/144098.html
- Linux 内存管理 重要结构体 (转)
- 基于 Android NDK 的学习之旅-----资源释放
- java 读取页面源码 的多种方式