android - android中targetSdkVersion的建议是什么?
问题描述
我有 2 个关于 targetSdkVersion 的问题:
1-android中targetSdkVersion的建议是什么?
2-如果我从 gradle 设置中删除它会发生什么?
解决方案
android:targetSdkVersion
此属性通知系统您已针对目标版本进行了测试,并且系统不应启用任何兼容性行为来保持您的应用程序与目标版本的前向兼容性。
随着 Android 随着每个新版本的发展,某些行为甚至外观可能会发生变化。但是,如果平台的 API 级别高于您应用的 targetSdkVersion 声明的版本,系统可能会启用兼容性行为,以确保您的应用继续按照您期望的方式运行。您可以通过指定 targetSdkVersion 以匹配其运行平台的 API 级别来禁用此类兼容性行为。例如,将此值设置为“11”或更高允许系统在 Android 3.0 或更高版本上运行时将新的默认主题 (Holo) 应用到您的应用程序,并且还可以在大屏幕上运行时禁用屏幕兼容模式(因为支持 API 11 级隐式支持更大的屏幕)。
minSDK - targetSdk - compileSdk之间的关系
minSdkVersion(最低可能)<= targetSdkVersion == compileSdkVersion(最新 SDK)
不提供怎么办targetSdkVersion
?
您的 minSdkVersion 和 compileSdkVersion 为 < API 23
(6.0 - MarshMallow - Have RunTime Permission) 并且您尚未添加targetSdkVersion
.
默认情况下,您的应用程序将获得您在清单中提供的所有权限,因为您尚未使用 API 23 编译或提供 targetSdkVersion。
在这些情况下,默认为minSdkVersion
. 如果您未提供minSdkVersion
,则默认为 API 1。
推荐阅读
- python - 环回登录系统
- reactjs - HashRouter 导航添加一个#
- google-apps-script - Google Sheet + App 脚本:如何使用数组为每个循环
- java - 用 SQLite 选择满足多个条件(但不是一起)的孩子的父记录
- c - 在 read() 之前清除套接字缓冲区
- firebase - Error: "I/Process (26960): Sending signal. PID: 26960 SIG: 9 Lost connection to device." while using flutter on android studio
- r - 将相对路径转换为绝对路径
- rider - 有没有办法查看项目中的关系?
- php - 隐藏自定义结帐字段,使其不会出现在 WooCommerce 我的帐户编辑地址中
- c++ - 我的 getline 是否阻止我的代码循环?