Android 8.1适配规范及常见问题处理方式,让你一口吃上“奥利奥”

热文导读 | 点击标题阅读

教你如何开发一款实用的完整Android App,附源码

吊炸天!74款APP完整源码!

一份年薪30万的Android面试宝典,附答案

来源:OPPO开发者平台(ID:OPPOMOBILEOPEN)

据 Android Central,谷歌在安卓开发者博客上更新文章,推出了几项新的规定,极可能会对安卓生态有新的影响。其中一条:从 2018 年 8 月开始,所有向 Play 商店提交的 APP 都必须面向 Android Oreo ( 安卓 8.0/8.1 等 ) 开发 。


对于这个最新的系统,谷歌强调,Android Oreo 拥有更好的安全性,同时8.1系统中还新增画中画、桌面角标、通知分组等功能。另外,Android 8.1续航还进行了特别的优化,谷歌加入了后台程序强力监控,提升了整体续航能力。

听起来确实很赞,但是这也给开发者带来了新的挑战。不过不要慌,这就为大家奉上吃“奥利奥”的正确姿势,希望对开发者们有所帮助。



Android 8.1适配规范


兼容性适配


安装、卸载正常

应用核心功能无卡死、停止运行、闪退、无响应等异常现象

UI显示正常

登录账号正常(含第三方登录)


卡顿、耗电适配


功耗:

待机功耗 <= 8mA

运行场景功耗 <= 400mA

性能:

应用启动速度 <= 1500ms

资源加载速度 <= 4000ms

FPS帧率 >= 25帧且不得连续丢3帧


Android 8.1常见问题及处理方式


1

三方加固


问题描述: 由于android 8.1在art部分的变动, 导致很多三方加固出现兼容性问题。

快速定位: 目前已知问题的错误都有比较明显的对应so报错, 此外如果您发现ClassNotFoundException等异常堆栈, 也很有可能是脱壳异常造成的问题。

解决方案: 使用最新三方加固的应用, 请务必更新到最新的加固版本。




2

altas框架


问题描述: 使用atlas框架较低版本的用户, 在android 8.1上存在兼容性问题, 会导致应用100%崩溃。

快速定位: libdexinterpret.so会报出地址异常。

解决方案: 目前atlas开发者已经更新兼容android 8.1的libdexinterpret.so, 请及时更新。


3

registerContentObserver使用

问题描述: 在您的版本升级到8.1及以上, 如果您使用的registerContentObserver无法在系统中指定到对应provider, 将会造成程序崩溃。

快速定位: 该问题发生会打印出java.lang.SecurityException: Failed to find provider***的异常堆栈。

解决方案: 在应用版本升级到android 8.1以上后, 请务必保证您使用的registerContentObserver能指向有效的provider。


4

notification channel

问题描述: android O新特性, 开发者将应用升级到8.1后, 使用notification时, 需要自行定义notification channel, 否则你的notificaiton将不会生效。

快速定位: 能在log找到No Channel found for ***的相关提示log。

解决方案: 仔细阅读谷歌的官方文档, 参照其修改即可。


5

DexPathList类

问题描述: 部分应用反射使用此类, 调用makePathElements这类内部接口, 在android 8.1可能会造成您的程序异常。

解决方案: 请修改您的程序, 不要再尝试使用此方法调用谷歌已经弃用的接口


6

后台执行限制

应用在两个方面受到限制:

后台服务限制:

处于后台空闲状态时,应用可以使用的后台服务存在限制。限制包括应用后台服务会被stop,后台应用创建不了后台服务等。

广播限制:

除了有限的例外情况,应用无法在AndroidManifest.xml清单中为隐式广播注册广播接收器,但可以在运行时注册这些广播,并且可以使用清单注册专门针对它们的显式广播。

如果您在适配Android 8.1过程中遇到其他无法解决的问题,欢迎留言讨论。

你有好的文章想和大家分享欢迎投稿,直接向我投递文章链接即可


Java和Android架构

微信扫描或者点击下方二维码领取Android\Python\AI\Java等高级进阶资源

关注后回复“百度”、“阿里”、“腾讯”、“资源”有惊喜

公众号:JANiubility

欢迎加入我们的Java和Android架构圈,已有近1000人加入学习交流,更多学习资源更新,更多交流进步


更多学习资料点击下面的“阅读原文”获取

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值