2***@qq.com
2***@qq.com
  • 发布:2020-01-07 12:12
  • 更新:2020-01-07 12:12
  • 阅读:1226

【报Bug】v3下用h5+添加webview到当前页面导致崩溃,使用原生底部tab首页获取的windowHeight不正确,播放进度在App上报错等问题

分类:uni-app

1、在v3 下 使用如下代码(官网抄的,只是改了点变量而已)会直接崩溃,也就是弹出error页面。关闭v3则不会

// #ifdef APP-PLUS  
        if (!this.webview) {  
            this.toolsHeight = 50 + Tools.getSafeareaBottomHeight();  
            let webview = plus.webview.create('', 'custom-webview', {  
                plusrequire: 'none', //禁止远程网页使用plus的API,有些使用mui制作的网页可能会监听plus.key,造成关闭页面混乱,可以通过这种方式禁止  
                'uni-app': 'none', //不加载uni-app渲染层框架,避免样式冲突  
                top: systemInfo.statusBarHeight + 44, //放置在titleNView下方。如果还想在webview上方加个地址栏的什么的,可以继续降低TOP值  
                bottom: 0  
            });  
            webview.loadURL(options.url);  
            let currentWebview = this.$mp.page.$getAppWebview(); //获取当前页面的webview对象  
            currentWebview.append(webview); //一定要append到当前的页面里!!!才能跟随当前页面一起做动画,一起关闭  
            webview.addEventListener(  
                'titleUpdate',  
                e => {  
                    uni.setNavigationBarTitle({ title: e.title });  
                },  
                false  
            );  
            this.webview = webview;  
            this.timer = setInterval(() => {  
                this.getWebviewHistory();  
            }, 1000);  
        }  

        // #endif

经过调试 好像使用了外部链接会强行转码(解码无效),转化成内部链接
/www/https%3A%2F%2Fwww.baidu.com%2F at file:///android_asset/data/dcloud_error.html:41
2、配置了原生tab,首页使用自定义顶部标题栏,底部安全域设置为none,使用getSystemInfoSync得到的windowHeight么有扣去底部tab高度。

{  
    "errMsg": "getSystemInfoSync:ok",  
    "brand": "Apple",  
    "model": "iPhone6",  
    "pixelRatio": 2,  
    "screenWidth": 375,  
    "screenHeight": 667,  
    "windowWidth": 375,  
    "windowHeight": 667,  
    "statusBarHeight": 20,  
    "language": "zh-Hans",  
    "system": "12.4.4",  
    "version": "1.9.9.72755",  
    "fontSizeSetting": "",  
    "platform": "ios",  
    "SDKVersion": "",  
    "windowTop": 0,  
    "windowBottom": 0,  
    "safeArea": {  
        "left": 0,  
        "right": 375,  
        "top": 20,  
        "bottom": 667,  
        "width": 375,  
        "height": 647  
    }  
}

3、使用createInnerAudioContext创建后,onTimeUpdate在App上为undefined,导致代码无法正常执行下去,但在web上能正常调用。

以上问题麻烦核实下 谢谢

2020-01-07 12:12 负责人:无 分享
已邀请:

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