在 新建一个 android project 时,要求输入 minSdkVersion 这一项,一般我们是指定和我们使用的 SDK 版本相一致的 API Level. 然后,在androidManifest.xml 文件中会有一个对应的属性:android:minSdkVersion .那这个属性是否可以修改呢?我觉得是可以的,但不能随便修改。

"android:minSdkVersion" ,故名思义,就是最小的 SDK 版本,这个值是对应 Android 不同版本的 API Level , 如 Android 1.5 对应 3,Android 1.6 对应 4,Android 2.1 对应7,Android2.2对应8 ,Android 2.3.3 对应10,等等。。。当用户指定这个值后,Android 系统会用这个指定的值对应的 SDK 版本去编译你的应用程序。

那么,我们在 androidManifest.xml 中指定的话,必须是比我们新建时的 API Level 小或相等的值,这样 Android 系统在编译的时候,才会用对应的版本的 SDK 进行编译。假如修改后的 android:minSdkVersion 比我们 project 里的 SDK 版本对应的 API level 大,那么Android 系统在编译的时候,就会报错。





举例说明:

1. 我们新建一个 Android Project (HelloAndroid), 指定为 Android 2.2 版本,对应的 minSdkVersion 填8,finish;

2. 此时我们运行 HelloAndroid ,会运行一个 2.2 版本的模拟器。

3. 假若我们现在去 AndroidManifest.xml 文件 中修改 android:minSdkVersion=7,再次运行,那么会在我们已经打开的 2.2 模拟器上运行。因为 Android API 都是向后兼容的,所以系统在编译时,这个 Project 是利用 2.1 版本来编译的,但也可以在 2.2 模拟器上运行;若我们先把 2.2 模拟器关闭,再运行 HelloAndroid 这个Project 的话,那么会新建一个 API Level=7 的 模拟器来运行这个程序(也就是 2.1模拟器)。

4. 假若我们修改 android:minSdkVersion=10, 那么无论你是否打开了 2.2 版本的模拟器,都会报错:

ERROR: Application requires API version 10. Device API version is 8 (Android 2.2).
Launch canceled!

转自:http://blog.csdn.net/ohuan/article/details/6560346

更多相关文章

  1. 如何设置Android命令行环境变量
  2. 帮同事找到了一个问题的解决办法:在android 3.0版本以上的系统 we
  3. Android:屏幕旋转时,禁止Activity重新加载
  4. 基于Android的MediaPlayer的音乐播放器的封装
  5. Android各个版本的名称和更新
  6. Android工程下build target,minSdkVersion,targetSdkVersion,maxSdk
  7. 丢失Android系统库或者Conversion to Dalvik format failed with
  8. Google主推-Android开发利器——Android(安卓)Studio,这可能是最
  9. android学习笔记(1)---搭建开发环境

随机推荐

  1. Android之选项菜单和上下文菜单解析
  2. Android(安卓)Studio for Ubuntu 14.04
  3. Version of SQLite used in Android?
  4. Android基础(四) 常用控件
  5. 关于Android(安卓)火车票查询App
  6. Android(安卓)html+动态添加控件,实现text
  7. Android 再按一次返回键退出 代码
  8. android多屏幕适配相关知识和官方翻译文
  9. android技术牛人博客
  10. Android Looper&Handler 源码