博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
应用 targetSdk 版本升级指导第二弹
阅读量:6703 次
发布时间:2019-06-25

本文共 1807 字,大约阅读时间需要 6 分钟。

电信终端产业协会(TAF)发布的《移动应用软件高API等级预置与分发自律公约》要求,截止到2019年5月1日所有新发布的应用API必须为26或更高,2019年8月1日现有应用API必须升级为26或更高。

在中已对Android8.0、Android9.0在targetSdk 版本变更方面做了详细介绍,本文则将对Android7.0、Android6.0以及Android5.x及以下系统版本在 targetSdk 版本方面的变更进行介绍。

*应用 targetSdk 版本升级流程

测试机准备

1.使用最新支持 Android 9.0 的手机测试:所有 EMUI 9.0 华为手机

2.Pixel刷机:

3.使用绿盟远程真机:

4.使用模拟器

targetSdk 版本相关变更介绍

Android7.0

(一)相关变更

1.系统禁止链接到非 NDK 库

从 Android 7.0 开始,系统将阻止应用动态链接非公开 NDK 库,原因为NDK 库可能会导致应用崩溃,此行为变更主要目的在为跨平台更新和不同设备提供统一的应用体验。即使应用中的代码不会链接私有库,但第三方静态库可能会进行链接,因此建议所有开发者都需进行相应检查,确保应用不会在运行 Android 7.0 的设备上崩溃。如果应用使用的是原生代码,则只能使用公开 NDK API。(

2.低电耗模式DOZE(系统状态)

进入条件:灭屏、未充电、静止持续1小时

退出条件:亮屏或移动或充电

限制资源

  • 限制应用访问网络
  • 暂停应用的Sync任务
  • 暂停应用的JobScheduler任务
  • 忽略应用的wakelocks
  • 标准Alarm推迟到维护窗口
  • 不执行wifi扫描

3.低电耗模式Lite Idle(系统状态)

进入条件:灭屏、未充电持续5分钟(Android P调整为3分钟)

退出条件:亮屏或充电

限制资源

  • 限制应用访问网络。
  • 暂停应用运行Sync任务 。
  • 暂停应用运行JobScheduler任务。

4.AppStandby模式(应用状态)

进入AppIdle条件:应用后台空闲总时间>48小时且亮屏后台空闲时间 > 12小时

排除&退出条件:前台应用、有前台服务的应用、通知栏或锁屏通知消息的应用或进行充电

不限制的应用:系统应用UID<10000的,Persist常驻应用,电池优化白名单,系统关联的其他应用

限制的资源

  • 限制应用访问网络
  • 暂停执行应用的Sync任务
  • 暂停执行应用的JobScheduler任务

5.App Standby Bucket 应用待机分组模式( Android P特性)

应用待机分组模式是在Doze模式未生效时(亮屏或刚刚灭屏时),对运行在后台的用户不可感知应用的耗电管控扩展。

(二)适配指导

低电耗模式和应用待机模式适配指导如下:

• 前台服务

应用需要在后台访问网络或者使用CPU时可以通过此方式。

• Doze白名单

查询应用是不是在doze白名单:

向用户申请授权添加doze白名单:

Android6.0变更

(一)相关变更

运行时权限

此版本引入了一种新的权限模式,用户可直接在运行时管理应用权限。这种模式让用户能够更好地了解和控制权限,为安装的应用分别授予或撤销权限,同时为开发者精简了安装和自动更新过程。

对于以 Android 6.0(API 级别 23)或更高版本为目标平台的应用,请务必在运行时检查和请求权限。确定应用是否已被授予权限,可调用新增的 checkSelfPermission() 方法。请求权限,可调用新增的 requestPermissions() 方法。具体参考:

(二)适配指导

• 解释需要权限的原因:系统在开发者调用 requestPermissions() 时显示的权限对话框将说明应用需要的权限,但不会解释为何需要这些权限。某些情况下,用户可能会感到困惑,因此,建议在调用 requestPermissions() 之前向用户解释应用需要相应权限的原因。

• 仅申请应用真正需要的权限

• 如果应用在启动之后一次要求用户提供多项权限,用户可能会感到无所适从并因此退出应用 。建议开发者应根据需要请求权限,对于某一些权限应用可以在真正需要使用的时候再尝试申请用户动态授权。

Android5.x(22-19)及以下版本变更

安卓绿色联盟会定期进行技术分享,欢迎关注!

转载地址:http://tyblo.baihongyu.com/

你可能感兴趣的文章
港科大KDD 2017录用论文作者详解:基于异构信息网络元结构融合的推荐系统
查看>>
通过扩展改善ASP.NET MVC的验证机制[实现篇]
查看>>
如何缓解Microsoft XML漏洞带来的风险?
查看>>
阿里云启动地震AI大赛:挑战余震震源捕捉
查看>>
在这里 创新是最默契的表达
查看>>
eclipse中spring访问mysql的简易实现
查看>>
深入DellWorld2015:SC9000存储软硬件更新解密
查看>>
分析:“AI on Hadoop”有意义吗?
查看>>
大数据将如何改变农业
查看>>
Docker Hub 最受欢迎的10大镜像
查看>>
ssh_scan:远程验证你SSH服务的配置和策略
查看>>
不懂技术的人不要对懂技术的人说这很容易实现
查看>>
iOS 10 的 iTunes 备份极易破解?
查看>>
Windows 7系统如何使用远程桌面命令?
查看>>
如何在2016年成为一个更好的Node.js开发者
查看>>
5G将成为新一代移动网络的指针 有望颠覆整个世界的样貌
查看>>
新一轮科技股大跌印证泡沫正在被挤出
查看>>
《规范敏捷交付:企业级敏捷软件交付的方法与实践》——1.10 风险与价值驱动...
查看>>
韩企多晶硅对华出口大增 中国企业的处境如何?
查看>>
分层视频存储方法
查看>>