在 新建一个 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!

转载于:https://www.cnblogs.com/niantiangang/p/3193540.html

android sdkversion相关推荐

  1. sdk数值与android版本,Android SdkVersion的区别及获取版本信息方法

    1.minSdkVersion,targetSdkVersion,maxSdkVersion,compileSdkVersion四个数值之间有什么区别? • minSdkVersion,maxSdkV ...

  2. 周报_2013第02周(2013/01/06-2013/01/12)

    2013.01.09 新浪微博#开放平台 <uses-sdk android:*SdkVersion=" " /> device sdk version 编译版本与调试 ...

  3. 浅谈android studio中各个SdkVersion的含义

    第一次写博客 做个关于各种SdkVersion含义.用处的笔记. compileSdkVersion: 只编译工程的SDK版本,我们知道Android Studio中的内置的Gradle来编译工程的, ...

  4. 【Android Gradle 插件】ProductFlavor 配置 ( applicationId 配置 | SdkVersion 相关配置 | version 应用版本配置 )

    文章目录 一.ProductFlavor 配置 1.applicationId 配置 2.minSdkVersion 配置 3.targetSdkVersion 配置 4.versionCode 和 ...

  5. android系统短信库的一些用法

    1.查询所有短信,按发件人进行分组 Cursor mCursor =managedQuery(Uri.parse("content://sms"),new String[] {&q ...

  6. Android 10.0 PackageManagerService(一)工作原理及启动流程-[Android取经之路]

    摘要:PackageManagerService是Android系统核心服务之一,在Android中的非常重要,主要负责APK.jar包等的管理. 阅读本文大约需要花费50分钟. 文章的内容主要还是从 ...

  7. android 收起下拉菜单,Android 展开/折叠 系统下拉通知栏

    最近几天碰到一个郁闷的问题,在有些机型上面使用PendingIntent.getActivity(context, 0, intent, 0)的方式打开一个指定的Activity后,通知栏并不主动折叠 ...

  8. android app 自动更新,AndroidUpdateDemo

    Android课程-App更新策略 @(Android) 第一节 课程介绍 概述 App更新是应用当中很常见的一个功能,基本上联网的app都应该具备这样的功能,对于更新迭代比较快速的产品,应用更新升级 ...

  9. Android targetSdkVersion 原理

    前几天 Google 官方发布文章解析 compileSdkVersion.minSdkVersion 以及 targetSdkVersion 的含义,以及合理设置各个值的意义,原文 Picking ...

最新文章

  1. mysql(五)查询缓存
  2. 【文档】七、Mysql Binlog不同事件类型的事件内容
  3. tensorflow r1.5 版本差异调研
  4. 【解决方案】UserWarning: Possibly corrupt EXIF data.导致读取图片失败
  5. C++ reinterpret_cast,const_cast等 显式类型转换总结
  6. 用中断的方式实现delay延时的一点注释
  7. Android--获取当前系统时间
  8. JAVA :RESTLET开发实例(一)基于JAX-RS的REST服务
  9. Android、IOS文字居中偏离的解决方案
  10. 联想软件商店安装教程
  11. java 三大特性_java的三大特性是什么?
  12. 计算机网络规划设计实例,网络规划设计方案实例.doc
  13. 【量化选基】每年初购买过去5年收益最好的沪深300指数增强,会超过混合基金吗?
  14. DM数据库实例迁移教程
  15. java对接支付宝三方登录
  16. Pytorch 深度学习实战教程(五):今天,你垃圾分类了吗?
  17. Activity启动过程源码流程梳理和解读
  18. pygame的游戏窗口退出办法
  19. OSChina 周四乱弹 ——程序员要赚多少钱才能让妻子保持温柔和美丽
  20. BugReport:前端不能成功解析后端信息造成消息阻塞问题

热门文章

  1. lombok工具中@Data注解问题
  2. 透明加密系统设计及实现-绪论
  3. 如何发送Excel中图表到邮件
  4. C# 如何理解 ASP.NET Web API 的 REST
  5. 利用Auto Deploy 部署ESXi 5
  6. hbase 根据主键查询
  7. windows查看、删除系统级隐藏文件(木马最喜欢用这招)
  8. Omi v1.0震撼发布 - 令人窒息的Web组件化框架
  9. 【原创】分享一个分析函数统计案例
  10. 虚拟主机-多域名多目录使用方法