在 新建一个 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. 3.6.3新版本AndroidStudio报Could not resolve all artifacts fo
  2. 第15章 Android启动过程 [Android应用开发与系统改造实战]
  3. 帮同事找到了一个问题的解决办法:在android 3.0版本以上的系统 we
  4. 2015Android设备、系统、分辨率最新统计数据
  5. Android的参数大致分成两块:系统服务参数和平台系统信息。
  6. Android各个版本的名称和更新
  7. Android简单登录系统

随机推荐

  1. 分享:在存储过程中使用另一个存储过程返回
  2. asp.net连接查询SQL数据库并把结果显示在
  3. sql server多行数据拼接的实例方法
  4. SQL Server 游标语句 声明/打开/循环实例
  5. SQL Server 2012 安装图解教程(附sql2012
  6. SQL Server控制语句的基本应用
  7. SQL Server的基本功能性语句介绍
  8. 关于SQL Server查询语句的使用
  9. mssql server 2012(SQL2012)各版本功能对
  10. sql存储过程的使用和介绍