在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。
- 浏览: 67219 次
- 性别:
相关推荐
1、minSdkVersion,targetSdkVersion,maxSdkVersion,compileSdkVersion四个数值之间有什么区别? • minSdkVersion,maxSdkVersion是项目支持的最低sdk版本和最高sdk版本。在安装apk前,系统会对这两个数值进行判断,...
开发者可以通过`uses-sdk`元素在清单文件中指定应用所要求的最低API级别(`android:minSdkVersion`)、目标API级别(`android:targetSdkVersion`)和最高API级别(`android:maxSdkVersion`)。`minSdkVersion`确保应用能在...
`<uses-sdk>`清单文件元素是关键,它允许开发者指定应用所需的最低(`android:minSdkVersion`)、目标(`android:targetSdkVersion`)以及最高(`android:maxSdkVersion`)API级别。这些属性在应用安装和更新时被系统检查...
以下是`minSdkVersion`、`targetSdkVersion`、`maxSdkVersion`以及`target API level`四个数值的详细解释: 1. **minSdkVersion**:这是应用能够支持的最低Android API级别。当用户尝试在设备上安装应用时,系统会...
但需要注意,设置targetSdkVersion并不意味着应用可以使用高于该版本的新特性,因为这可能导致在低版本系统上运行时出现错误。 6. **Compile With**: 指定用于编译应用程序的Android版本SDK。设置过高可能导致对旧...
开发者应确保应用向下兼容更低版本的Android,通常通过设置`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性。 - **编译与构建**:使用API 22时,需要在构建配置中指定`targetSdkVersion`为22,以利用新...
- 在`manifest`文件中的`<uses-sdk>`元素下,可以通过`android:minSdkVersion`、`android:targetSdkVersion`和`android:maxSdkVersion`属性来指定应用支持的最低、目标和最高API级别。 - `android:minSdkVersion...
- 使用`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性来指定应用支持的Android版本范围。 6. **性能优化**: - 针对Android 8.1.0的新特性,如后台限制,开发者应优化服务和广播接收器的使用,避免...
Android的版本更新带来了许多API的变化,因此,开发者需要关注minSdkVersion、targetSdkVersion和maxSdkVersion,以确保应用在兼容性和新特性之间取得平衡。 总的来说,这个项目对于初学者来说,是一个很好的实践...
开发者使用SDK Platforms 27来确保应用与Android 8.1系统的兼容性,并能向下兼容更低版本的Android系统,通常通过设置`minSdkVersion`, `targetSdkVersion`和`maxSdkVersion`属性。 7. **测试和调试**: 开发者...
开发者通常需要通过设置minSdkVersion、targetSdkVersion和maxSdkVersion来控制应用的兼容性范围。 五、最佳实践 1. 使用最新的稳定API版本进行开发,以充分利用新功能并遵循最新的设计规范。 2. 对于低版本设备的...
这可能涉及到使用dimens.xml文件来定义不同屏幕大小的尺寸,以及使用minSdkVersion、targetSdkVersion和maxSdkVersion来控制兼容性。 10. **测试与调试**: 文件中提到部分代码可能需要开发者自行调整以适应项目需求...
新版本可能需要更高的Android API级别,开发者需确保新版本对老设备的兼容性,并在`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`属性中设定范围。 六、数据迁移与备份 更新过程中,需要处理用户数据的迁移...
在描述中提到了针对特定 SDK 版本的配置,`<uses-sdk>` 标签用于指定应用能运行的最低(minSdkVersion)、目标(targetSdkVersion)以及最大(maxSdkVersion)Android 版本。这确保应用能在兼容的设备上运行,并有助...
12. **版本兼容性**:由于Android设备型号众多,API级别各异,开发者需要关注API兼容性问题,通常通过`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`来控制。 在"Android_API中文合集.pdf"这份文档中,你...
`<uses-sdk>`标签用于指定应用兼容的Android版本,`android:minSdkVersion`定义了应用能运行的最低Android版本,而`android:targetSdkVersion`则指定了应用针对的最高版本。设置较高的`targetSdkVersion`有助于确保...
这可能涉及到使用`minSdkVersion`、`targetSdkVersion`和`maxSdkVersion`来设置应用支持的Android版本范围。 2. **权限管理**: 拨号器应用需要请求特定的权限才能访问电话服务,例如`READ_PHONE_STATE`用于读取...