当前位置:首页 > 技术分享

uni-app 中如何打开外部应用,如:浏览器、淘宝、京东、微博等

admin1年前 (2024-11-01)技术分享1644

cheme协议

scheme协议,如taobao://,

打开外部scheme的API是plus.runtime.openURL()


常用URLscheme

[  
    // 只在 ios 中生效  
    {  
        name: 'App Store',  
        scheme: 'itms-apps://'  
    },  
    {  
        name: '支付宝',  
        pname: 'com.eg.android.AlipayGphone',  
        scheme: 'alipay://'  
    },  
    {  
        name: '淘宝',  
        pname: 'com.taobao.taobao',  
        scheme: 'taobao://'  
    },  
    {  
        name: 'QQ',  
        pname: 'com.tencent.mobileqq',  
        scheme: 'mqq://'  
    },  
    {  
        name: '微信',  
        pname: 'com.tencent.mm',  
        scheme: 'weixin://'  
    },  
    {  
        name: '京东',  
        pname: 'com.jingdong.app.mall',  
        scheme: 'openApp.jdMobile://'  
    },  
    {  
        name: '新浪微博',  
        pname: 'com.sina.weibo',  
        scheme: 'sinaweibo://'  
    },  
    {  
        name: '优酷',  
        pname: 'com.youku.phone',  
        scheme: 'youku://'  
    }  
]



uni-app拉起微博APP

启动微博并打开搜索页面搜索uni-app

scheme协议

// 如果手机安装了微博,那么可以直接拉起微博,跳转到指定页面,如果没有安装微博,那点击没有反应。

let openUrl=`sinaweibo://searchall?q=uni-app`
plus.runtime.openURL(encodeURI(openUrl), function (res) {
// 打开指定URL地址失败时回调,并返回失败信息。
});

http/https地址

let openUrl='https://s.weibo.com/weibo?q=uni-app'
//先拉起浏览器,如果安装微博,就再拉起微博指定页面,如果没有微博,就停留在当前h5页面
plus.runtime.openURL(encodeURI(openUrl), function (res) {
// 打开指定URL地址失败时回调,并返回失败信息。
});

注意:

ios中地址要求规范,需要转码使用encodeURI()处理一下地址。

否则提示

 {
“code”: -1,
“message”: “无效的参数”
}
            openJDApp(appurl) {
                if (plus.runtime.isApplicationExist({ pname: 'com.jingdong.app.mall', action: 'openApp.jdMobile://' })) {
					if (plus.os.name == 'Android') {
						plus.runtime.openURL(appurl, error => {
							console.log('Open system default browser failed: ' + error);
						}, 'com.jingdong.app.mall');
					} else if (plus.os.name == 'iOS') {
						plus.runtime.openURL(appurl);
					}
				}else {
					location.href = appurl;
					//TODO
				}
            },


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:https://blog.bitefu.net/post/622.html

分享给朋友:

“uni-app 中如何打开外部应用,如:浏览器、淘宝、京东、微博等” 的相关文章

[Windows] Adobe Flash Player 34.0.0.92及可用版修改方法

[Windows] Adobe Flash Player 34.0.0.92及可用版修改方法

随着 2021 年的到来,Adobe Flash Player 也迎来了告别,Adobe 在 2020 年 12 月 31 日后将不再支持 Flash Player。其实早在 2017 年,Adobe 公司就已宣布,计划在 2020 年底逐…

centos 配置Let's Encrypt 泛域名https证书

centos 配置Let's Encrypt 泛域名https证书

前言2018年1月份Letsencrypt可以申请泛域名证书,这让我们部署多域名、多站点https省了很多功夫,终于可以不用维护多个域名的https证书。笔者以acme.sh为例,手把手教你配置https证书~本教程适用于centos 6.…

VirtualXposed 不支持32位应用 32位无法安装问题解决办法

VirtualXposed 不支持32位应用 32位无法安装问题解决办法

VirtualXposed 是基于VirtualApp 和 epic 在非ROOT环境下运行Xposed模块的实现(支持5.0~10.0)。与 Xposed 相比,目前 VirtualXposed 有…

遭遇国外ip抓取或攻击怎么办一招解决禁止海外IP访问

遭遇国外ip抓取或攻击怎么办一招解决禁止海外IP访问

究发现很多网站被攻击都是来自海外的肉鸡,所以禁掉海外IP访问网站也是不错的防护手段,而且国内网站几乎很少有国外用户访问,称之为大局域网也不为过。今天主机吧来教大家如何利用域名解析禁止掉海外IP访问网站。绝大多数域名解析服务商都是提供电信联通…

用CMD命令查询域名的DNS解析记录:A,NS,MX,CNAME,TXT

1、查询域名的A记录nslookup -qt=A bitefu.net当然查询A记录你直接用ping命令来ping域名也可以获得A记录。2、查询域名的NS记录nslookup -qt=NS bitefu.net3、查询域名的MX记录nslo…

在CentOS 5.x 6.x里使用yum源 换阿里云国内源换vault.centos.org源

阿里云CentOS 5 的系统,无法用yum来安装应用软件。  原因:CentOS 5 在2017-03-31日已经结束支持,不再提供维护更新,所以包括阿里云镜像站的文件可能都是过时或已经有部分文件缺失。 &n…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。