应用市场出新规,国内千款应用TargetSdkVersion调查分析

为响应GooglePlay政策及工信部公约,应用需基于Android8.0开发。据统计,国内Top1000应用中仅12%符合要求。升级TargetSdkVersion至26可提升应用性能与安全性。

近期,谷歌针对Google Play上架应用发布强制性适配Android 8.0公告,要求自2018 年 8 月 1 日起,所有向 Google Play 首次提交的新应用都必须基于 Android 8.0 (API 等级 26) 完成开发;11 月 1 日起,所有 Google Play 的现有应用也必须基于 Android 8.0完成更新。

同时为响应工信部《移动应用软件高API等级预置与分发自律公约》的要求,截止到2019 年 5月,所有新上架和预置应用都必须针对 Android 8.0 (API 等级 26) 开发;到2019 年 8 月 ,所有现有应用更新要基于 Android 8.0。

近日,华为终端开放实验室针对国内Top1000主流应用的TargetSdkVersion展开调查。

什么是TargetSdkVersion

TargetSdkVersion对开发者来说,指的是应用在开发阶段能够支持到的目标系统版本。

应用在运行时,系统会检查其TargetSdkVersion配置,如果当前系统版本低于或等于此项配置,表示应用开发者已经在当前系统上进行了全面的测试,无需做任何兼容性处理。如果当前系统版本高于此项配置,表示此应用开发时没有在当前系统版本上进行测试,这时系统就会执行一系列的兼容性策略。

华为终端实验室建议开发者将TargetSdkVersion 配置成26,这会显著提升应用安全性以及性能并全面改善用户体验。

测试环境

硬件环境:P20

软件版本:Android 8.1

测试范围

本次测试选取了各大应用市场Top1000主流应用,类型涉及:便捷生活、购物比价、社交通讯、新闻阅读、影音娱乐、出行导航、拍摄美化、实用工具、教育、美食、汽车、旅游住宿、商务、儿童、金融理财、运动健康、主题个性和游戏。

数据来源

Top1000应用的TargetSdkVersion的扫描结果。

数据分析

首先我们来看一下TargetSdkVersion的等级与Android版本的对应关系

下面是国内各大应用市场综合排名Top1000应用 TargetSdkVersion 属性的分布情况

由图看出,TargetSdkVersion在26以上的仅占比为12%,不符合Google要求的占比88%,虽然Android版本一直在提高安全和性能,但应用的兼容版本达到Android8.0的还是很少。在不符合Android 8.0 开发的要求中TargetSdkVersion 23以下占比高达52%,应引起关注。TargetSdkVersion 23是开发者常用的一个版本,Google在此版本上有较大的权限变更。TargetSdkVersion 24、25 占比 14% ,Google在此版本为了延长电池寿命增加了低耗电模式,并且增加了私有目录访问权限。

Top1000的各分类应用的TargetSdkVersion 分布对比分析

除了拍摄美化,其他分类的TargetSdkVersion 26及以上的占比均未达到50%,现状严峻。其中主题个性26及以上占比甚至为0%,对此开发者需重点关注。

将TargetSdkVersion 配置成26及以上,会显著提升应用安全性及性能,改善用户体验。但通过对国内Top1000应用TargetSdkVersion的数据分析结果显示,大部分应用都不符合Google Play的开发要求,同样不满足《移动应用软件高API等级预置与分发自律公约》对国内各应用的要求。

对开发者的建议

华为终端实验室建议您将应用目标 API 等级设置为最新版本,确保用户能够享用这些改进项目,同时允许应用在 Android 低版本仍旧可以运行。适配新目标等级后,应用可以利用 Android 平台最新功能给用户创造更美好的体验。

如果您有更好的解决方法与见解,欢迎在文章下方留言交流。

华为终端开放实验室后期将持续发布各类别应用的评测报告,为用户选择最佳体验的应用提供参考,敬请关注!

如有疑问,可发送邮件至deveco@huawei.com。

*本报告最终解释权归华为所有。

华为终端开放实验室

2018年8月3日

DevEco 云测平台已开放能力概览

云测试:

兼容性测试——全自动化验证,保证应用无兼容性死角

稳定性测试——基于控件识别技术的随机遍历测试

性能测试——深入分析应用性能薄弱点

功耗测试——检测影响手机应用功耗的各项关键指标

安全测试——进行广告拦截、病毒扫描、安全漏洞分析和隐私泄露分析

云调试:

远程真机——华为全机型+谷歌原生真机,7*24小时在线

功能测试:

录制回放——解决应用功能逻辑测试诉求

*以上内容都已面向安卓绿色联盟会员免费开放,可登录deveco.huawei.com使用体验。

<think>好的,用户现在想了解在UniApp中如何设置针对小米应用targetSdkVersion。首先,我需要回忆一下UniApp的配置文件和相关的文档。记得在UniApp中,Android的配置主要在manifest.json里,特别是App常用其他设置部分。用户之前的问题中提到过minSdkVersion和targetSdkVersion的设置,引用[1]也提到了这些参数的作用,比如minSdkVersion是兼容的最低版本,而targetSdkVersion指定应用适配的最高API等级。 接下来,用户特别关注小米应用的设置。可能需要考虑小米设备的兼容性问题,比如MIUI的自由窗口功能。引用[2]提到MIUI的小窗基于Android多窗口方案,应用需要适配多窗口模式,这可能涉及到targetSdkVersion的设置,因为较高的targetSdkVersion可能需要应用支持新的特性或行为变更。 首先,确定在manifest.json中设置targetSdkVersion的位置。用户可能需要手动修改该值,尤其是在使用HBuilderX时,默认的targetSdkVersion可能是26。根据谷歌的要求,应用需要逐步升级targetSdkVersion,比如现在Google Play要求至少33,但国内可能宽松些,不过小米应用商店可能有自己的要求。 然后,考虑设置targetSdkVersion对小米设备的影响。比如,如果设置较高的版本,应用可能需要处理新的权限模型或后台限制,这可能影响在MIUI上的运行。同时,MIUI的小窗模式需要应用支持多窗口,这可能需要检查布局的适配性,确保在不同分辨率和窗口模式下显示正常。 此外,可能需要测试应用在较高targetSdkVersion下的行为,特别是权限请求和后台服务。例如,从Android 12(API 31)开始,需要显式声明精确位置权限,这可能需要在manifest中更新权限声明,并确保代码中正确处理权限请求。 最后,总结步骤:修改manifest.json中的targetSdkVersion,适配多窗口模式,处理权限和后台限制,测试在小米设备上的兼容性。同时,参考小米的开发者文档,确保符合他们的要求,避免应用被商店拒绝。</think>### UniApp中设置小米应用targetSdkVersion指南 #### 一、核心配置位置 在UniApp项目中,`targetSdkVersion`的设置在**manifest.json**文件中完成。路径为: ``` manifest.json => App常用其他设置 => Android设置 => targetSdkVersion ``` #### 二、参数规范 1. **默认值** - 未手动配置时,HBuilderX默认值为`26`(对应Android 8.0) 2. **小米应用适配建议** - 需遵循小米应用商店最新要求(当前建议≥28) - 国内主流应用推荐设置`28-33`(Android 9.0-13) #### 三、设置示例 ```json "android": { "targetSdkVersion": 28 } ``` #### 四、MIUI兼容性要点 1. **多窗口适配** MIUI自由窗口依赖Android多窗口规范,需确保: - 界面布局支持`resizeableActivity=true` - 禁用固定方向:`screenOrientation="unspecified"` - 添加配置声明: ```xml <meta-data android:name="android.max_aspect" android:value="3.1" /> ``` 2. **权限适配** targetSdkVersion≥23需动态申请危险权限,特别注意: ```javascript // 示例:请求存储权限 uni.authorize({ scope: 'scope.writePhotosAlbum', success() { /* 授权成功 */ } }) ``` #### 五、验证流程 1. 使用**小米真机调试**(建议覆盖MIUI 12-14) 2. 检查自由窗口模式下的布局显示 3. 验证后台服务限制(target≥26需使用前台服务) [^1]: 基础配置参考UniApp官方文档:https://ask.dcloud.net.cn/article/193 [^2]: MIUI适配指南详见小米开发者平台:https://dev.mi.com/console/doc/detail?pId=2228
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值