第一步:后去用户当前的位置

//获取用户经纬度
			async getCurlocation(){
				uni.getLocation({
					geocode:true,
					type:'gcj02',
					success:(res)=>{
						this.latitude = res.latitude;
						this.longitude = res.longitude;
						this.current_address = res.address.province+res.address.city+res.address.district+res.address.street+res.address.streetNum+res.address.poiName;
					}
				})
			},
1
2
3
4
5
6
7
8
9
10
11
12

第二步,打开高德地图导航

navigaToShop(){
				let shop_latitude = this.shop_latitide;
				let shop_longtude = this.shop_longtude;
				let current_latitude = this.latitude;
				let current_longitude = this.longitude;
				
				var packageName = 'com.autonavi.minimap';
				var main = plus.android.runtimeMainActivity();
				var packageManager = main.getPackageManager();
				var PackageManager = plus.android.importClass(packageManager)
				var packageInfo = packageManager.getPackageInfo(packageName,PackageManager.GET_ACTIVITIES);
				if (packageInfo) {
				    var Uri = plus.android.importClass("android.net.Uri");
					var url = "amapuri://route/plan?sourceApplication=maxuslife" +
						"&sid=A&slat="+current_latitude(当前维度)+"&slon="+current_longitude(当前经度)+"&sname=" +this.current_address(当前位置)+
						"&did=B&dlat="+shop_latitude(店铺经度)+"&dlon="+shop_longtude(店铺维度)+"&dname="+shop_address(店铺地址)+"D10&dev=0&t=0";
					var Intent = plus.android.importClass('android.content.Intent');
					var intent = new Intent();
					intent.setAction(Intent.ACTION_VIEW);
					intent.addCategory(Intent.CATEGORY_DEFAULT);
					var uri = Uri.parse(url);
					//将功能Scheme以URI的方式传入data  
				    intent.setData(uri);
					intent.setPackage("com.autonavi.minimap");
					var main = plus.android.runtimeMainActivity();
					main.startActivity(intent);
				} else {
				    // alert('未安装' + packageName + '')
					uni.showToast({
						title: `目前导航暂只支持${packageName}`
					})
				}
			},
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33