uniapp:APP端webview拦截H5页面跳转,华为市场发布需要限制webview的H5页面跳转

在使用uniapp开发APP项目时,华为市场上线APP会被打回来:您的应用内容存在点击跳转至第三方应用市场或游戏中心下载渠道的问题,不符合华为应用市场审核标准。

华为审核指南4.6

因此可以考虑下面的处理方式,通过拦截webview页面的url实现:

javascript 复制代码
  onReady(() => {
    nextTick(() => {
      plusReady();
    });
  });

  const plusReady = () => {
    let pages = getCurrentPages();
    let page = pages[pages.length - 1];
    let currentWebview = page.$getAppWebview();
    let t: any = setTimeout(() => {// 加个延时器,确保能够拿到currentWebview.children()[0]
      clearTimeout(t);
      t = null;
      // 获取webview实例
      const wv = currentWebview.children()[0];
      // 除myweb.cn以外的页面跳转都将被拦截
      // 如需全部拦截:wv.overrideUrlLoading({ mode: 'reject' }, (e) => {}
      wv.overrideUrlLoading({ mode: 'allow', match: '.*.myweb.cn/.*' }, (e) => {
        uni.showModal({
          title: '提示',
          content: '尊敬的用户,您即将打开手机浏览器跳转页面,可能会存在安全风险,请谨慎操作。确定继续吗?',
          showCancel: true,
          success: ({ confirm }) => {
            if (confirm) {
              plus.runtime.openURL(e.url); // 使用外部浏览器打开,规避风险,跳出去了你想干啥和我APP没关系~~~~
            }
          }
        });
      });
    }, 500);
  };
相关推荐
巴博尔2 小时前
UNIAPP中NVUE页面 动画
android·前端·javascript·ios·uni-app
边界条件╝13 小时前
uniapp 深度使用
uni-app
路光.14 小时前
uniapp小程序/App使用webview打通麦克风权限实现录音功能
小程序·uni-app·app
xiaoyan201514 小时前
全新首发uniapp+deepseek-v4三端通用智能ai助手
uni-app·ai编程·deepseek
anyup15 小时前
【最全鸿蒙】uni-app 转鸿蒙:从打包失败到商店上架成功全过程
前端·uni-app·harmonyos
2501_9151063215 小时前
深入解析HTTPS抓包原理、中间人攻击及反抓包技术攻防
数据库·网络协议·ios·小程序·https·uni-app·iphone
游戏开发爱好者816 小时前
React Grab工具详解:AI助力Vue3、Svelte和Solid前端元素调试
android·ios·小程序·https·uni-app·iphone·webview
sN2vuQ08W16 小时前
uni-app 实现视频聊天、屏幕分享,支持Android、HarmonyOS、iOS
android·uni-app·音视频
遗憾随她而去.1 天前
uniapp App平台 真机运行
uni-app
愚者Pro1 天前
Flutter Widget组件学习(专为 Uniapp 转 Flutter 定制)
vue.js·学习·flutter·uni-app