北陌
北陌
  • 发布:2022-09-07 16:12
  • 更新:2024-05-20 11:26
  • 阅读:3859

【报Bug】关于 uniapp 里 webview与腾讯x5 tbs webview 的一次使用经历。

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 10- 21H2

HBuilderX类型: 正式

HBuilderX版本号: 3.5.3

手机系统: Android

手机系统版本号: Android 10

手机厂商: 一加

手机机型: 7pro

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

使用uniapp 创建vue2项目,勾选x5 tbs, 云打包

预期结果:

自动下载x5内核

实际结果:

不下载x5内核

bug描述:

测试手机:一加7pro,安卓;红米K30pro,安卓11。
起因: 自己经常使用uniapp来做开发h5,和小程序用css 的flex + gap属性,用于布局与标签之间的间隔。
常在chrome和edge调试。Flex+gap属性在微信端及小程序正常,电脑端与手机端的edge和chrome也正常。
然后发现 7pro打包安卓apk上gap不生效,及手机一些浏览器不生效。
排查原因:手机端的android system webview版本低了,样式不兼容。
寻找解决方案:
1,修改css,不使用较新的语法。
2,提升系统android system webview软件版本。
3,使用x5 ,抹平兼容。
修改中遇到的问题:
1,修改css,懒(跳过)
2,自己安装了android system webview软件,apk 正常了,之前不兼容的浏览器也两个样式正常了。但是,但是,国内软件商店已经没有android system webview软件可以用来更新,对一般用户来说是难以引导的一件事。
3,使用uniapp提供腾讯的x5 tbs webview,官方说法是启用这个功能后,第一次打开软件会自动下载,并在下次重新打开应用后使用x5。
带来的问题,无法监测x5下载完毕,不能自动启重启应用。并需要手动重启,影响用户体验,大概率看到一堆乱样式就想卸载了。
并且,并且现实情况是7pro,和其他一部测试手机,进入应用更本不会去下载x5,多次重启应用甚至重启手机,也没有下载x5。
K30pro,进入应用 会去主动下载x5,重启应用后,可使用x5, 但用户无法感知x5下载完毕。 并且,并且,第一次进入应用。如果x5没有下载完毕,退出应用,再次进入应用,将不会再继续下载x5,一直使用原生webview。除非清除数据,重新进入。

2022-09-07 16:12 负责人:无 分享
已邀请:
s***@v-matrix.net

s***@v-matrix.net

遇到一样的问题。x5自动安装的成功率低。
在一些设备上,似乎还需要用户手动给存储的权限,才能成功。

DCloud_Android_THB

DCloud_Android_THB

可以尝试设置一下 minUserAgentVersion https://uniapp.dcloud.net.cn/collocation/manifest.html#appwebview

  • 北陌 (作者)

    同时设置最小webview版本与x5,我这边测得会冲突,即使弹出下载x5弹框后,一直再弹出webview版本低,而退出应用。

    同时设置如果webview满足设置,则不弹出下载x5弹框,不去下载x5。

    2022-09-08 17:16

  • 北陌 (作者)

    manifest 仅设置x5,进入应用无下载x5弹框,也不下载,偶尔清除数据进入可以下载。

    2022-09-08 17:29

  • 北陌 (作者)

    回复 7***@qq.com: 也可能所谓限流吧

    2022-09-08 17:32

  • DCloud_Android_THB

    回复 7***@qq.com: 最小版本号,你要设置为你能确保css能正确显示的ua版本。设置过大就导致下载的x5版本也不满足最小版本的判定,反之过小的话,导致系统内核版本也满足最小版本的判定,虽然会下载x5但是会以静默的方式安装。

    2022-09-08 17:33

  • 北陌 (作者)

    回复 DCloud_Android_THB: 设置的最小版本即官网示例 "minUserAgentVersion": "95.0.4638.75",出现的上述情况。


    同时设置后,假如版本号合适能用,是否继续下载x5,猜测是。


    我想我现在大概纠结的问题还是在设置x5后,应用不能稳定安装x5,并自动使用x5内核。


    希望下载x5的弹框可以控制到下载即存在,而非静默还安装不上。


    且不与低于webView的弹框冲突。即弹出低于webview,但下载x5后,应用可以使用。

    2022-09-08 17:59

  • DCloud_Android_THB

    回复 7***@qq.com: 95.+是一个非常高的版本,小米Android12手机浏览器内核是这个版本,具体的你需要的版本需要你自测一下;下载x5后,也会判定一下x5是否满足版本 ,所以设置正确的最小版本很重要~,假如x5的版本满足你的要求,建议最小版本设置区间为[最低承受浏览器版本,x5-ua ) 。

    2022-09-08 18:28

  • 北陌 (作者)

    回复 DCloud_Android_THB: 将最低承受浏览器版本,设为85, 测得x5 版本在89。设为85后可进入,应用,然后测得出 移动网络下,第一次下载x5成功后,每次进入仍然弹出询问x5下载。 允许,即可进入,拒绝会提示版本低,退出应用。 (每次),(或许这里可以设置关闭弹窗,但不该这样吧)


    然后清除数据,再进入应用将不能下载x5,低于设定webview的手机,将会弹出低于webview,退出应用。(持续如此,不知是不是所谓的x5限流,但也不该这样。)

    2022-09-09 09:52

  • DCloud_Android_THB

    回复 7***@qq.com: 这个问题需要仔细看一下,麻烦留一下qq,我给你看看。

    2022-09-09 12:54

  • 袭烽

    没有作用问题依旧,hbuilderx 版本是4.15问题还是这样,x5内核下载成功概率不到十分之一,成功率特别低,到底怎么办啊

    2024-05-17 16:18

  • DCloud_Android_THB

    回复 袭烽: x5内核下载是腾讯的接口,用户端应该不会频繁删除应用,首次安装成功率还是很高的。

    2024-05-17 16:22

  • 袭烽

    回复 DCloud_Android_THB: 我看腾讯最新的x5内核,出了一个离线集成方案,咱们有对应的解决办法吗,能不能x5做到安装包里面,不要用腾讯的接口了,太坑

    2024-05-17 16:33

  • 袭烽

    回复 DCloud_Android_THB: 或者能不能借助什么工具,咱们手动下载到本地安装x5内核

    2024-05-17 16:34

  • DCloud_Android_THB

    回复 袭烽: 这个需要调研一下离线集成方案,这个需要时间成本,如果你强需求可以先自己封装个插件。

    2024-05-17 16:47

  • 袭烽

    回复 DCloud_Android_THB: X5内核SDK加载不稳定问题说明,腾讯官方已经明确说了,是限流控制成本,新版本SDK不存在这个问题,但是要升级商业版本收费,真的是非常的恶心啊,哎

    2024-05-20 11:27

  • l***@qq.com

    回复 DCloud_Android_THB: 现在12月了,这个问题还是没法解决。什么时候考虑集成啊

    2024-12-03 00:35

DCloud_Android_ST

DCloud_Android_ST

X5内核一直下载失败 还是偶尔能成功但是概率低
参考文档 https://uniapp.dcloud.net.cn/tutorial/app-android-x5.html 查看 汇总x5浏览器内核加载失败问题

  • 独孤求剑

    怎么看出x5内核下载是否成功?

    2023-07-08 23:12

DCloud_Android_THB

DCloud_Android_THB

HBuilderX3.6.7-alpha已修复

2***@qq.com

2***@qq.com

怎么解决的呀,我配了他下都不下,配置最低版本为85,打开后弹个webview版本太低就退出应用了

林cq

林cq

X5内核一直下载失败 还是偶尔能成功但是概率低,解决了吗?

9***@qq.com

9***@qq.com

我是离线打包的,一直打印不出来MQQBrowser

袭烽

袭烽 - 观 千 剑 而 后 识 器,操 千 曲 而 后 晓 声 。

我也遇到同样问题,正在思考解决办法,感觉是腾讯远程下载限流了,把 "timeOut": 30000,设成30秒试试

袭烽

袭烽 - 观 千 剑 而 后 识 器,操 千 曲 而 后 晓 声 。

X5内核SDK加载不稳定问题说明,腾讯官方已经明确说了,是限流控制成本,新版本SDK不存在这个问题,但是要升级商业版本收费,真的是非常的恶心啊,哎

要回复问题请先登录注册