uniapp开发的app打开外部app,使用夜神模拟机测试跳转

4 篇文章 0 订阅
<template>
	<div>
		<uni-title title='打开外部app'></uni-title>
		<div class='container'>
			<button class='btn' type="default" @tap="openApp('sunflower')">向日葵远程</button>
		</div>
		<div class='container'>
			<button class='btn' type="default" @tap="openApp('zhifubao')">支付宝</button>
		</div>
		<div class='container'>
			<button class='btn' type="default" @tap="openApp('qq')">qq</button>
		</div>
		<div class='container'>
			<button class='btn' type="default" @tap="openApp('taobao')">淘宝</button>
		</div>
	</div>
</template>

<script>
	export default {
		data() {
			return {
				appMap: {
					'zhifubao': {
						name: '支付宝',
						pname: 'com.eg.android.AlipayGphone',
						appurl: 'market://details?id=com.oray.sunlogin',
						scheme: 'alipay://'
					},
					'sunflower': {
						name: '向日葵',
						pname: 'com.oray.sunlogin',
						appurl: 'market://details?id=com.oray.sunlogin',
						scheme: 'alipay://'
					},
					'taobao': {
						name: '淘宝',
						pname: 'com.taobao.taobao',
						appurl: 'market://details?id=com.oray.sunlogin',
						scheme: 'taobao://'
					},
					'qq': {
						name: 'QQ',
						pname: 'com.tencent.mobileqq',
						appurl: 'market://details?id=com.oray.sunlogin',
						scheme: 'mqq://'
					},
				}
			}
		},
		methods: {
			openApp(name) {
				let c = this

				let pname = this.appMap[name].pname
				let scheme = this.appMap[name].scheme
				let appurl = this.appMap[name].appurl
				//安卓
				if (plus.os.name == 'Android') {
					//存在
					if (c.isExistApp(pname)) {
						plus.runtime.launchApplication({
								pname: pname
							},
							function(e) {
								// c.openMarket(appurl)
							}
						);
					} else {
						uni.showModal({
							title: '提示',
							content: '您还没有此APP,去下载',
							success: function(res) {
								if (res.confirm) {
									c.downloadUrl(
										"https://down.oray.com/sunlogin/android/Sunlogin_Remote_11.2.1.40714.apk"
									)
								} else if (res.cancel) {}
							}
						});
					}


					//ios	
				} else if (plus.os.name == 'iOS') {
					plus.runtime.launchApplication({
						action: this.appMap[name].scheme
					}, function(e) {
						console.log('Open system default browser failed: ' + e.message);
					});
				}
			},
			downloadUrl(url, func) {
				plus.runtime.openURL(url, function(res) {
					func()
				});
			},
			isExistApp(pname) {
				return plus.runtime.isApplicationExist({
					//查看安卓系统手机有没有下载这款app
					pname: pname //微信app云打包的包名
				})
			},
			openMarket(marketPackageName) {
				if (plus.os.name == "Android") {
					//打开安卓应用商店
					var Uri = plus.android.importClass("android.net.Uri");
					var uri = Uri.parse(`market://details?id=`);
					var Intent = plus.android.importClass('android.content.Intent');
					var intent = new Intent(Intent.ACTION_VIEW, uri);
					var main = plus.android.runtimeMainActivity();
					main.startActivity(intent);

				} else if (plus.os.name == 'iOS') {
					let appurl = "itms-apps://itunes.apple.com/cn/app/com.eg.android.AlipayGphone";
				}
			}
		},
		onLoad() {

		}
	}
</script>

<style>
	.container {
		padding: 8px 20px;
	}

	.btn {
		width: 20rem;
		color: #FFFFFF !important;
		background-color: #007AFF !important;
	}
</style>

夜神模拟器安装
下载链接
安装完成打开页面如下:
在这里插入图片描述

配置adb路径和端口号,夜神端口号默认为62001
在这里插入图片描述
点击运行
在这里插入图片描述
结果如图所示
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值