appwociao
appwociao
  • 发布:2021-08-02 20:02
  • 更新:2021-08-03 17:25
  • 阅读:552

【报Bug】安卓 plus.webview.create 创建的webview,返回时白屏

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 11.4

手机系统: Android

手机系统版本号: Android 10

手机厂商: OPPO

手机机型: R17

页面类型: vue

打包方式: 离线

项目创建方式: CLI

CLI版本号: 3122

示例代码:

pages.json 配置

    {  
      "path": "pages/webview/main",  
      "style": {  
        "navigationBarTitleText": "页面加载中",  
        "app-plus": {  
          "titleNView": false  
        }  
      }  
    },

webview 创建


    this.currentWebview = this.$scope.$getAppWebview()  

    this.wv = plus.webview.create(this.url, 'wv', {  
        statusbar:{background:'#FFFFFF'},  
        backButtonAutoControl: 'hide',  
        cachemode: 'noCache',  
        titleNView: {  
            type:  'default',  
            backgroundColor: '#FFFFFF',  
            bounce: 'vertical',  
            titleText: '页面标题',  
            titleColor: '#333333',  
            autoBackButton: true  
        }  
    })  
    this.wv.show()  
    this.currentWebview.append(this.wv)  

操作步骤:

安卓设备下,进入 webview 页面,点手机返回按钮,会出现白屏,再点一次才返回上一页

预期结果:

点一次正常返回

实际结果:

点一次白屏,点两次才返回

bug描述:

通过 plus.webview.create 创建的 webview ,返回时页面出现白屏,再点一次才返回上一页
点返回按钮或安卓物理按键返回均如此。
iOS 下无此问题。

注:返回键是通过 webview setStyle 设置的导航栏里的返回键,pages.json 配置里禁用了默认导航栏。
具体见代码

2021-08-02 20:02 负责人:无 分享
已邀请:
DCloud_Android_ST

DCloud_Android_ST

去掉 this.wv.show() 再试下

  • appwociao (作者)

    刚试过了,没效果。还是会白屏。

    2021-08-03 12:43

  • DCloud_Android_ST

    回复 appwociao: 完整示例提供下吧我们这边看下是否可以复现问题

    2021-08-03 12:47

appwociao

appwociao (作者)

@DCloud_Android_ST 见附件

DCloud_Android_ST

DCloud_Android_ST

1、backButtonAutoControl 为什么要设置为hide? 白屏就是因他而起具体看文档https://www.html5plus.org/doc/zh_cn/webview.html#plus.webview.WebviewStyles (你可以配置none)
2、为什么不用web-view组件呢 不比通过plus创建webview要香吗

  • appwociao (作者)

    1 试了下解决了,感谢大佬. 2 为了在onload里拿到wv

    2021-08-03 18:34

  • z***@163.com

    我用uniapp的web-view组件也有这问题,我的是跳转到微信客服,返回也是要两次才可以

    2023-04-25 17:19

该问题目前已经被锁定, 无法添加新回复