wuxianlin 23-05-26 00:20
微博认证:数码博主

每个Android应用(apk)都会在清单文件(AndroidManifest.xml)中指定一个 targetSdkVersion(目标 API 级别,适配该版本Android系统)和minSdkVersion(最低API级别)。
Android为了兼容旧版Android应用,会根据应用的targetSdkVersion,关闭对应没有支持的新版本Android的特性(包含很多安全性、隐私保护等改进),否则可能因为不兼容导致应用无法使用。
例如,Android 6.0(sdk版本23)开始引入的运行时权限(弹框,动态授权),但如果应用的targetSdkVersion低于23,就意味着没有适配运行时权限这个新特性,不需要弹框,也能获得权限授权。
Google早就发现这个漏洞,所以上架Google Play会严格要求targetSdkVersion。国内最初也有跟进,但是没有更新。另外Android支持侧载嘛,还有你懂的应用生态问题 ,以及某些应用商店不作为,,,各方面原因导致现状不容乐观[doge]
所以从Android 14开始,Android系统将设置最低允许安装的应用的targetSdkVersion,防止应用钻古老的空子,我们看到当前设置的是23(Android 6)。但话又说回来,会不会有些定制系统,为了兼容性/用户体验,故意把这个特性去掉呢?那得问用户答不答应了[怒]
配图一:Android 14新安全特性:最低可安装的目标 API 级别
http://t.cn/A6pzMLmp
配图二:GooglePlay上架对targetSdkVersion的要求http://t.cn/A6oQyKny
配图三:TAF联合各软件商店发布的移动应用软件高API等级预置与分发自律公约,要求targetSdkVersion大于等于Android 8(API 26)http://t.cn/A6pzMLm0
配图四:TAF发布关于严格执行《移动应用软件高API等级预置与分发自律公约》内容的公告http://t.cn/A6pzMLmW
配图五:PDD反向升级
配图六:QQ在Google Play的最新版本
配图七:QQ最新官网版本的targetSdkVersion为26

发布于 广东