targetSdkVersion讲解
来源:互联网 发布:js 动态设置margin 编辑:程序博客网 时间:2024/05/22 14:48
targetSdkVersion讲解
在manifest文件中的<uses-sdk> 用来描述该应用程序可以运行的最小和最大API级别,以及应用程序开发者设计期望运行的平台版本。通过在manifest清单文件中添加该属性,我们可以更好的控制应用在不同android 系统版本上的安装和兼容性体验问题。
如下:<span style="font-family:KaiTi_GB2312;"><span style="font-size:18px;"> <uses-sdk android:minSdkVersion="11" android:targetSdkVersion="19" /></span></span>
1、首先在讲解targetSdkVersion之前,得讲一下minSdkVersion
当安装应用的手机系统API level 小于 minSdkVersion的值时,将不能安装该应用。
minSdkVersion 用于指明应用程序运行所需的最小API level。如果不指明该属性,其默认值为1。如上图1中minSdkVersion =“11”,说明该应用在只能安装在大于等于android系统API level 为11的系统上。如果将该应用安装在API level 小于11的android系统上,系统会提示手机API level的版本太低,安装失败。
所以这里有一点需要引起我们注意,我们在开发时必须留意我们用到API 接口的版本。在定义minSdkVersion属性时,尽量要让minSdkVersion的值大于等于我们用到的API 接口的开始被支持的最低版本。这样可以让不支持该接口的android系统不能安装我们的应用,防止应用在一些手机上因兼容性问题而崩溃。
总而言之:minSdkVersion就是在安装程序的时候,如果目标设备的API版本小于minSdkVersion(大于maxSdkVersion),程序将无法安装。一般来说没有必要设置maxSdkVersion。
2、 targetSdkVersion
targetSdkVersion相对复杂一些,如果设置了此属性,那么在程序执行时,如果目标设备的API版本正好等于此数值,他会告诉Android平台:此程序在此版本已经经过充分测,没有问题。不必为此程序开启兼容性检查判断的工作了。也就是说,如果targetSdkVersion与目标设备的API版本相同时,运行效率可能会高一些。
如果平台的API Level高于你的应用程序中的targetSdkVersion属性指定的值,系统会开启兼容行为来确保你的应用程序继续你期望的形式来运行。例如,设置这个targetSdkVersion值为11或更高,当你的应用运行在Android3.0或更高的系统上时,系统会自动为你的应用使用新的默认主题(Holo主题),并且当运行在大屏幕的设备上时会禁用屏幕兼容模式(screen compatibility mode),因为支持了 API level11就暗示了支持大屏幕。一般情况下,应该将这个属性的值设置为最新的API level 值,这样的话就可以充分利用新版本系统上的新特性。Eclipse在生成项目时,默认将该值设置为最高。
如果平台的API Level低于你的应用程序中的targetSdkVersion属性指定的值时, 系统会开启兼容行为来确保你的应用程序能正常运行,这时一些在targetSdkVersion上的特性就没有了。但是,这个设置仅仅是一个声明、一个通知,在低版本系统中运行不会有太实质的作用。比如:使用了targetSdkVersion这个SDK版本中的一个特性,但是这个特性在低版本中是不支持的,那么在低版本的API设备上运行程序时,可能会报错:java.lang.VerifyError。也就是说,此属性不会帮你解决兼容性的测试问题。你至少需要在minSdkVersion这个版本上将程序完整的跑一遍来确定兼容性是没有问题的。
总之:targetSdkVersion这个属性是在程序运行时期起作用的,系统根据这个属性决定要不要以兼容模式运行这个程序。
同时,targetSdkVersion是在程序运行的时候起作用,用于提高指定版本的设备上程序运行体验。
0 0
- targetSdkVersion讲解
- android:targetSdkVersion/minSdkVersion/maxSdkVersion讲解
- targetSdkVersion
- targetSdkVersion
- targetSdkVersion
- android:targetSdkVersion
- Android targetSdkVersion
- android:targetSdkVersion问题。
- minSdkVersion、targetSdkVersion、targetApiLe
- minSdkVersion、targetSdkVersion、targetApiLe
- minSdkVersion,targetsdkversion,maxSdkVersion
- minSdkVersion,targetSdkVersion,maxSdkVersion
- android开发关于targetSdkVersion
- android:targetSdkVersion相关
- Android targetSdkVersion 17 @JavascriptInterface
- Android targetSdkVersion详解
- minSdkVersion、targetSdkVersion、target
- targetSdkVersion 相关了解
- EJB详解
- web集群环境下session问题得解决方案比较
- 子节点 和 js 选择和jquery选择
- Java:单例模式的七种写法
- angularjs控制器controller
- targetSdkVersion讲解
- Android中如何设置margin
- Android学习之路-----来自stormzhang的博客
- 我们应该了解的那些事-Reference
- cmake 生成目标三种方式
- ViewPager+Fragment LazyLoad 最优解
- 数据对象安全校验(oval框架)
- 利用gdb远程调试驱动模块
- Hadoop 入门 云计算概念