【BUG笔记】WebView返回时重复加载问题(CanGoBack返回true)

新手学堂016

【BUG笔记】WebView返回时重复加载问题(CanGoBack返回true),第1张

同一webview页面,加载完成后在小米手机上可正常返回,即canGoBack为false,直接调用superonBackPress方法退出activity;而华为、oppo(目前已知)机型上,会出现canGoBack为true的情况,此时按下返回键会重新加载页面,用户体验很差。

1、经过debug检查,异常机型上页面加载会回调到shouldOverrideUrlLoading方法,由此判断可能是由于页面初始化发生了重定向导致的问题;

2、经过分析H5页面,发现页面加载时使用了windowlocationreplace方法,测试后发现在华为OV流手机上会被识别为跳转了新页面,即canGoback会返回true,造成返回时重复加载页面的问题。

1、让H5大佬修改下实现,避免使用replace(废话)

2、在onBackPress中判断当前加载的url和webview初始化时的url是否一致,如一致即代表目前实际处在顶层页面,不调用goback方法即可。

小米手机设置屏幕下方虚拟按键的方法:

1、以小米mix2手机为例,首先在手机桌面上点击设置图标。

2、进入设置界面后,找到“更多设置”,点击进入。

3、进入更多设置选项后,点击打开“手势及按键快捷方式”选项。

4、接着向下滑动屏幕,会看到虚拟按键的设置选项,点击“隐藏虚拟按键”右侧按钮打开,可以隐藏虚拟按键。

5、点击“虚拟键调换顺序”右侧的小按钮,可以改变虚拟按键的顺序。

首先我们在小米手机屏幕左右滑动找到设置的图标。

然后在打开的小米手机设置页面,点击系统应用设置的菜单项。

然后在打开的小米手机设置页面,点击系统应用设置的菜单项。

这时就会打开小米手机全局搜索设置页面,在页面当中找到进入搜索的快捷手势设置。

在弹出的进入搜索的快捷手势菜单当中,我们选择桌面上滑菜单项。

返回到小米全局搜索设置页面,可以看到快捷手势已经设置为上滑设置了。这样以后我们只要上划屏幕就可以快速的打开小米全局搜索。

可能是手机卡顿或者屏幕失灵,可以找售后人员咨询解决。

Redmi(红米)是小米集团旗下,面向年轻人的科技品牌。旨在为全球年轻人打造高品质,且拥有旗舰体验、超预期的手机与智能硬件产品。坚持“不顾一切的热爱”的品牌理念,与全球年轻人站在一起。Redmi的前身,是小米公司在2013年7月31日推出的全新产品线“红米”。2019年1月3日上午10点,小米公司正式宣布,将红米系列升级为小米手机业务的一个独立子品牌Redmi。2019年1月10日,小米公司召开Redmi品牌独立的发布会。

手机总是返回主界面,可能是以下原因导致:

检查手机主菜单键有没有油滴等污渍,可能是桌面键上面有油污或杂质导致自动触发桌面键指令返回桌面,可以将按键面板上的屏幕擦干净来解决。

可能是系统内存不足,运行软件过多或过大,导致软件闪退,可以实时关闭并清理用不到的软件,并且利用手机安全管理软件进行系统内存的深入清理后再使用。