`
44289533
  • 浏览: 67219 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

minSdkVersion,targetSdkVersion,maxSdkVersion

阅读更多

在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。

分享到:
评论

相关推荐

    Android SdkVersion的区别及获取版本信息方法

    1、minSdkVersion,targetSdkVersion,maxSdkVersion,compileSdkVersion四个数值之间有什么区别? • minSdkVersion,maxSdkVersion是项目支持的最低sdk版本和最高sdk版本。在安装apk前,系统会对这两个数值进行判断,...

    Android API级别外文文献及翻译.doc

    开发者可以通过`uses-sdk`元素在清单文件中指定应用所要求的最低API级别(`android:minSdkVersion`)、目标API级别(`android:targetSdkVersion`)和最高API级别(`android:maxSdkVersion`)。`minSdkVersion`确保应用能在...

    安卓 英文 外文文献翻译 Android API级别.doc

    `&lt;uses-sdk&gt;`清单文件元素是关键,它允许开发者指定应用所需的最低(`android:minSdkVersion`)、目标(`android:targetSdkVersion`)以及最高(`android:maxSdkVersion`)API级别。这些属性在应用安装和更新时被系统检查...

    在AndroidManifest.xml中uses-sdk内属性意思

    以下是`minSdkVersion`、`targetSdkVersion`、`maxSdkVersion`以及`target API level`四个数值的详细解释: 1. **minSdkVersion**:这是应用能够支持的最低Android API级别。当用户尝试在设备上安装应用时,系统会...

    android中创建项目各选项的意思.docx

    但需要注意,设置targetSdkVersion并不意味着应用可以使用高于该版本的新特性,因为这可能导致在低版本系统上运行时出现错误。 6. **Compile With**: 指定用于编译应用程序的Android版本SDK。设置过高可能导致对旧...

    (API 22) SDK Platform 下载

    开发者应确保应用向下兼容更低版本的Android,通常通过设置`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性。 - **编译与构建**:使用API 22时,需要在构建配置中指定`targetSdkVersion`为22,以利用新...

    android 版本控制方法

    - 在`manifest`文件中的`&lt;uses-sdk&gt;`元素下,可以通过`android:minSdkVersion`、`android:targetSdkVersion`和`android:maxSdkVersion`属性来指定应用支持的最低、目标和最高API级别。 - `android:minSdkVersion...

    android sdk27版本

    - 使用`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性来指定应用支持的Android版本范围。 6. **性能优化**: - 针对Android 8.1.0的新特性,如后台限制,开发者应优化服务和广播接收器的使用,避免...

    安卓简单计算器含数据存储

    Android的版本更新带来了许多API的变化,因此,开发者需要关注minSdkVersion、targetSdkVersion和maxSdkVersion,以确保应用在兼容性和新特性之间取得平衡。 总的来说,这个项目对于初学者来说,是一个很好的实践...

    android sdk platforms 27

    开发者使用SDK Platforms 27来确保应用与Android 8.1系统的兼容性,并能向下兼容更低版本的Android系统,通常通过设置`minSdkVersion`, `targetSdkVersion`和`maxSdkVersion`属性。 7. **测试和调试**: 开发者...

    android中文api

    开发者通常需要通过设置minSdkVersion、targetSdkVersion和maxSdkVersion来控制应用的兼容性范围。 五、最佳实践 1. 使用最新的稳定API版本进行开发,以充分利用新功能并遵循最新的设计规范。 2. 对于低版本设备的...

    安卓EditText输入框相关-Android自定义edittext(实现删除手机号码样式选中未选中底部状态改变.rar

    这可能涉及到使用dimens.xml文件来定义不同屏幕大小的尺寸,以及使用minSdkVersion、targetSdkVersion和maxSdkVersion来控制兼容性。 10. **测试与调试**: 文件中提到部分代码可能需要开发者自行调整以适应项目需求...

    Android APP程序更新安卓

    新版本可能需要更高的Android API级别,开发者需确保新版本对老设备的兼容性,并在`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性中设定范围。 六、数据迁移与备份 更新过程中,需要处理用户数据的迁移...

    Android学习笔记

    在描述中提到了针对特定 SDK 版本的配置,`&lt;uses-sdk&gt;` 标签用于指定应用能运行的最低(minSdkVersion)、目标(targetSdkVersion)以及最大(maxSdkVersion)Android 版本。这确保应用能在兼容的设备上运行,并有助...

    Android_ANDROID-API.zip_android

    12. **版本兼容性**:由于Android设备型号众多,API级别各异,开发者需要关注API兼容性问题,通常通过`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`来控制。 在"Android_API中文合集.pdf"这份文档中,你...

    Android开发自学笔记(二):工程文件剖析

    `&lt;uses-sdk&gt;`标签用于指定应用兼容的Android版本,`android:minSdkVersion`定义了应用能运行的最低Android版本,而`android:targetSdkVersion`则指定了应用针对的最高版本。设置较高的`targetSdkVersion`有助于确保...

    Android-10-拨号器.zip

    这可能涉及到使用`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`来设置应用支持的Android版本范围。 2. **权限管理**: 拨号器应用需要请求特定的权限才能访问电话服务,例如`READ_PHONE_STATE`用于读取...

Global site tag (gtag.js) - Google Analytics