使用uni-app 开发的app,部分功能页面加载的H5页面,在app中跳转H5使用的是webview跳转的方式,H5页面是自定义的标题栏返回;在H5二级三级页面中可以一级一级的返回到app中。现需要控制安卓物理返回键在H5的二级三级页面中一级一级的返回到app问题:
解决思路:在uni-app加载webview的页面中,使用onBackPress方法控制跳转

// 只有在该函数中返回值为 true 时,才表示不执行默认的返回,自行处理此时的业务逻辑
onBackPress(options) {
			if (options.from === 'navigateBack') {  
				return false;  
			}  
			// #ifdef APP-PLUS
			// wv = plus.webview.create 创建的webview变量
			if (wv) {
				wv.canBack(e => {  // 查询Webview窗口是否可后退 返回true即返回H5上一级
				    if(e.canBack){ 
						wv.back();
					}else{  //返回 false 即到 app加载H5的第一页,直接返回app,即H5页面回到app页面中
					    uni.navigateBack({
							delta:1
						})
				    }
				})
			}
			return true;
			// #endif
	    },
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐