做个记录,在做签到功能时需要用到,强制用户开启GPS定位。目前在vue页面的安卓上面是没有问题的,在wexx上面的页面还不行,也就是nuve。

handleNotice(e){
				let system = uni.getSystemInfoSync();// 获取系统信息
				console.log(JSON.stringify(system));
				if (system.platform === 'android') { // 判断平台
					var context = plus.android.importClass("android.content.Context");
					var locationManager = plus.android.importClass("android.location.LocationManager");
					var main = plus.android.runtimeMainActivity();
					var mainSvr = main.getSystemService(context.LOCATION_SERVICE);
					if (!mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER)) {
						uni.showModal({
							title: '提示',
							content: '请打开定位服务功能',
							showCancel: false, // 不显示取消按钮
							success() {
								if (!mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER)) {
									var Intent = plus.android.importClass('android.content.Intent');
									var Settings = plus.android.importClass('android.provider.Settings');
									var intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); 
									main.startActivity(intent); // 打开系统设置GPS服务页面
								} else {
									console.log('GPS功能已开启');
								}
							}
						});
					}
				} 
				// uni.navigateTo({
				// 		url: './../tabBar-3/notice/notice_list?type=1&userId='+_self.userInfo.userId
				// });
			},
Logo

前往低代码交流专区

更多推荐