信不过你开车
信不过你开车
  • 发布:2020-10-08 22:27
  • 更新:2020-10-09 16:32
  • 阅读:1805

【报Bug】uni-app schemeWhitelist配置无效

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 10.15.4 (19E287)

HBuilderX类型: 正式

HBuilderX版本号: 2.8.13

手机系统: Android

手机系统版本号: Android 8.0

手机厂商: 三星

手机机型: s9+

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

manifest.json配置如下

app-plus:{  
        "schemeWhitelist" : [ "sms", "tel", "mailto", "callto", "weixin", "alipay", "alipays", "alipayqr","mqq", "iosamap"],  
}

操作步骤:

plus.webview.open('https://h5.m.taobao.com/?sprefer=sypc00','webview');

预期结果:

阻止跳转到淘宝APP

实际结果:

唤起淘宝APP

bug描述:

webview打开远程链接如(https://h5.m.taobao.com/?sprefer=sypc00\);会唤起淘宝app..
schemeWhitelist配置无效

2020-10-08 22:27 负责人:DCloud_App_Array 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

云端打包默认已经添加常用应用白名单,参考:https://ask.dcloud.net.cn/article/434
需要注意:schemeWhitelist仅对iOS平台有小,在webview中需要用户点击操作触发调用scheme操作才能打开三方应用,点击网页中的“打开App”按钮才能唤起淘宝。页面中js代码触发的scheme无法打开淘宝App。

  • 信不过你开车 (作者)

    哦,,看到了默认打包就配置有taobao....那请问如何删除跳转呢?? 移除淘宝APP跳转


    2020-10-09 12:48

  • DCloud_App_Array

    回复 信不过你开车: 调用scheme也是请求url跳转的,可以使用Webview窗口对象的overrideUrlLoading方法拦截,参考:https://www.html5plus.org/doc/zh_cn/webview.html#plus.webview.WebviewObject.overrideUrlLoading


    2020-10-09 14:36

  • 信不过你开车 (作者)

    回复 DCloud_App_Array: overrideUrlLoading尝试过的,拦截不了,,,


    2020-10-09 14:55

  • 信不过你开车 (作者)

    回复 信不过你开车: 窗体直接打开https://h5.m.taobao.com/?sprefer=sypc00\链接,就会唤起APP,,页面并没有任何点击操作


    2020-10-09 14:56

DCloud_App_Array

DCloud_App_Array

Android平台的scheme与iOS可能不一样,Android平台应该是tbopen,参考如下示例:

  var w = plus.webview.create('','webview');  
  w.overrideUrlLoading({'match':'tbopen.*','mode':'reject'}, function(e){  
    console.log('overrideUrlLoading: '+JSON.stringify(e));  
  });  
  w.loadURL("https://h5.m.taobao.com/?sprefer=sypc00");  
  w.show();

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