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

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

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

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 中如何打开外部应用,如:浏览器、淘宝、京东、微博等” 的相关文章

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 有…

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

下面的密钥,是微软官方提供的,仅能用于Windows10系统版本的升级,比如从家庭版升级为专业版、专业版升级为企业版等。升级密钥不能用于激活系统,激活需要KMS或者数字权利,由于涉及到版权问题,在此不宜分享,请大家自行查找激活相关的内容。准…

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

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

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

Nginx服务崩溃自动重启脚本(监控进程服务并自动重启进程服务)脚本

有一台服务器运行着Ngin最近突然有一次崩溃,导致使用方当天无法访问网页端,然后我不得不登录服务器,检查各项服务,发现nginx崩溃了,于是重启Nginx,问题解决。后来为了防止Nginx再发生这种情况给运维带来的运维成本,于是写了一个脚本…

安卓模拟器连接端口 及常用命令

下面是我总结和测试通过的:有的是搜集来的模拟器名称                     &nbs…

发表评论

访客

看不清,换一张

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