admin管理员组

文章数量:1558049


项目周四晚上上线,到周六发现有人反馈程序闪退
赶紧给用户打电话问操作流程,结果用户说只要点列表页面(属于webview页面)直接就闪退了
上线前新老测试机和同事手机各种测试都没问题啊,这一上线咋能闪退啊,于是就让用户录了个屏,看了下是不最新版本,发现确实是用户说的。万分惆怅啊于是各种排查代码,发视代码没问题啊。实在没办法了,想起来了腾讯大佬原来说的方法了,决定让用户重新加载一下内核试试。
debugtbs.qq一定要用手机打开,电脑端打不开。打开以后我让用户手动安装了一下线上内核,重启了一下app结果都可以了。

根据上面说的初步可以判定不是用户没加载成功x5内核(用户查看了内核版本号,并且手机上还装有QQ和微信,就是版本低了点),这就只有一种可能了,内核版本兼容问题,代码找了两遍确实看不出来啥问题,于是去看了下Crash栈,发现确实有不少报错信息,并且标有报错代码信息。然后就去问了下腾讯大佬这行代码报兼容错误是咋回事,大佬回复的原话是:这个接口是后来加的,你调用时保护下吧,属于新sdk调用到老内核了

报错代码
//对于刘海屏机器如果webview被遮挡会自动padding
    webView.getSettingsExtension().setDisplayCutoutEnable(true);
错误栈信息:

java.lang.AbstractMethodError
abstract method “void com.tencent.smtt.export.external.extension.interfaces.IX5WebSettingsExtension.setDisplayCutoutEnable(boolean)”

解决办法
  // 对于刘海屏机器如果webview被遮挡会自动padding
        if (webView.getSettingsExtension()!=null){
            try {
                webView.getSettingsExtension().setDisplayCutoutEnable(true);
            }catch (Throwable e){
                e.printStackTrace();
            }
        }
内核下载不了原因分析
  1. 限流: 全新安装下载内核的时候,有一定概率遇到后台限制流量带宽,来减少成本。
  2. 进程切换问题,内核安装未完成,App进程 关闭了
    这l两种种情况需要等24小时以后会自动下载安装或者app卸载重装。
周五周六(18:00-21:00)debugtbs.qq下载不了内核?

服务器维护期不支持下载。

64位手机兼容问题

安装最新版本44181即可

本文标签: 内核版本兼容问题