互联网客户端基于Android O(API等级26)需解决问题

2019-04-23  本文已影响0人  angeliur
背景:之前的项目targetSDK的版本是23,今年所有应用需要按照《移动应用软件高API等级预置与分发自律公约》的约定,应用应基于Android O开发,否则无法通过应用商店的上架。所以我们的targetSDK版本需要升级到26,下面是公司的架构师总结的升级sdk26需要注意的问题,以及从哪些方面去解决,分享给大家参考。

目前大部分互联网客户端基于Android M(API等级23)开发
达到基于API等级26的目标需要包括下列所有适配内容:
Android M/23 -> Android N/24 -> Android N/25 -> Android O/26
适配内容仅包括 “必须” 适配的部分,不包括 “可选” 内容。“必须”即如果不完成适配,应用可能无法按预期工作,或短期内可能无法按预期工作; “可选” 例如采用操作系统新增功能改进用户体验,或改尚未废弃的老接口为新接口 。

适配方法:
可能存在问题需要排查的点:
  1. 应用自启动限制
  1. 后台应用运行时间限制
  1. 后台能力限制
  1. 隐私
  1. 安全性
  1. 接口标准化
  1. 能力变化
  1. 权限
  1. 其他变化

总结:

以上列出了很多版本变化需要关注的点,其中最主要是静态广播的注册、后台服务的限制以及应用间文件访问方式的变更。广播尽可能的采用动态注册的方式,服务可以选择前台服务和JobService两种方式,根据实际的业务需求来选择。如果及时性要求比较高并且能够接受前台服务通知栏就可以使用前台服务的方式来工作,如果实时性要求不是很高可以使用JobService来交给系统分发,系统一次最多可以执行6个JobService,每个可以执行的时间大概是10分钟,10分钟后就会执行其他job,还可以通过设置JobService的优先级来保证系统优先调度。
当然了,这些只是比较重要的部分,更多细节变化的适配需要通过编译、测试验证,再结合自己的实际需求来调整。

上一篇 下一篇

猜你喜欢

热点阅读