雨悸
雨悸
  • 发布:2021-03-30 14:22
  • 更新:2024-06-07 02:04
  • 阅读:2600

【报Bug】使用plus.runtime.openURL打开支付宝, 报错: code -3 此功能不支持

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: big sur 11.0.1

HBuilderX类型: 正式

HBuilderX版本号: 3.1.6

手机系统: iOS

手机系统版本号: IOS 14

手机厂商: 苹果

手机机型: iphone7

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
    plus.runtime.openURL("alipays://", err => {  
        uni.showToast({  
            title: err.message,  
            mask: false,  
            duration: 1500,  
            icon: 'none'  
        });  
        console.log(err);  
    });

操作步骤:

plus.runtime.openURL("alipays://", err => {
uni.showToast({
title: err.message,
mask: false,
duration: 1500,
icon: 'none'
});
console.log(err);
});

预期结果:

正常打开第三方应用

实际结果:

报错,无法打开第三方应用

bug描述:

plus.runtime.openURL 报错 code -3 此功能不支持

2021-03-30 14:22 负责人:无 分享
已邀请:
l***@163.com

l***@163.com

注意几点

  1. ios上支付宝的自定义协议是alipay,也就是下面这个是对的
    var info = alipay://platformapi/startapp?appId=xxxxxx&page=/pages/index/index;
    plus.runtime.openURL(info);
  2. 要加应用访问白名单 "urlschemewhitelist" : "alipay"
  3. 一定要重新制作自定义基座 hbuildx, 运行-> 运行到手机或模拟器 -> 制作自定义调试基座 (重点重点,我前面两点都改了,就是因为没有重新制作自定义基座,折腾了大半夜)
DCloud_iOS_XHY

DCloud_iOS_XHY

  • 1***@qq.com

    支付宝是哪个 没有找到

    2022-05-09 16:01

  • x***@163.com

    回复 1***@qq.com: 你好 请问你解决了吗

    支付宝的是哪个

    2022-05-21 16:55

  • z***@163.com

    回复 x***@163.com: 你好,解决了支付宝支付是哪个

    2022-06-05 17:13

  • j***@yeah.net

    解决了么? 找不到支付宝是哪个

    2022-10-09 14:44

  • j***@yeah.net

    回复 z***@163.com: 您好 解决了吗

    2022-10-09 14:44

blueSky235

blueSky235

请问你解决了吗,我添加了白名单也打不开

2***@qq.com

2***@qq.com

ps:ios上支付宝的自定义协议是alipay Android上支付宝的自定义协议是alipays  
// #ifdef APP-PLUS  
uni.getSystemInfo({  
    success(res) {  
        if (res.platform == 'android') {  
            var info = alipays://platformapi/startapp?appId=xxxxx&page=/pages/index/index;  
            plus.runtime.openURL(info);  
        } else {  
            var info = alipay://platformapi/startapp?appId=xxxxxx&page=/pages/index/index;  
            plus.runtime.openURL(info);  
        }  
    },  
});  
// #endif
5***@qq.com

5***@qq.com

请问解决了吗?遇到同样的问题

要回复问题请先登录注册