minSdkVersion、compileSdkVersion、targetSdkVersion Android
minSdkVersion 字面意思,应用能支持的最低SDK版本。也就是应用可以运行的最低要求,为的是尽量覆盖最多的人群。如何合理的设置这个值,可以查看目前不同版本的android设备的市场占有率。
查看地址:https://developer.android.google.cn/about/dashboards/
注意你项目中使用的库,他们可能有自己的minSdkVersion m,你的应用设置的minSdkVersion必须大于等于这些库的minSdkVersion。
Android版本与SDK/API版本、JDK对应关系
https://blog.csdn.net/qq_42690281/article/details/131640670
比如 minSdkVersion 24 对应Android 7.0 以上 需要开发环境 jdk8 以上
targetSdkVersion
targetSdkVersion 能够使用的最高SDK版本。以下两个场景用于加强理解。
场景一:比如说你现在的targetSdkVersion是20(Android4.4),现在想在项目里使用Materal Design风格的一些控件,这个新特性是在Android 5.0增加的,这样你就要把targetSdkVersion设置为21(Android5.0)。
场景二:targetSdkVersion 23(Android 6.0)时,新增了运行时权限概念。Android6.0之前,在清单文件中列出权限后,在应用安装时给出声明权限列表,用户只能全部接受或者全部拒绝(拒绝系统不会安装应用)。Android6.0开始,清单文件中列出权限后,还必须在运行时请求所需要的每项危险权限。用户可以授权或拒绝,即使拒绝权限,应用仍然可以继续运行有限功能。如果你的项目targetSdkVersion小于23,那么系统就不会应用最新的变化。也就是说,即使你需要一些危险权限,仍不需要运行时请求授权,只要在清单文件中列出就可以。
如果你的compileSdkVersion设置的是23或23以上,你就可以使用新的API先适应一下这种新的变化。可以在你适应了之后就把targetSdkVersion升级。也就是在介绍compileSdkVersion时候提到的,为使用新的API做准备。
综上来看,三者值的关系是:
minSdkVersion<=targetSdkVersion<=compileSdkVersion
转自:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性