uniapp里打开系统定位代码

代码 1年前 (2023) 站长
65 0 0

最近用uniapp对接高德地图 配置都填好了,真机调试uni.chooseLocation弹出位置选择,但如果没开启gps是不会走fail,需要提前判断是否开启gps,百度也是找了很久没有相关代码,问chatgpt也只是说了在小程序里打开设置的代码 openSetting app里调用是会报错,下面是在uniapp里打开系统定位设置,判断安卓和苹果。

let system = uni.getSystemInfoSync(); // 获取系统信息
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, // 不显示取消按钮
confirmText: "去打开", // 确认按钮文字
confirmColor:'#09c499',//删除字体的颜色
success:async function () {
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{
····
}
} else if (system.platform === 'ios') {
console.log("苹果");
var cllocationManger = plus.ios.import("CLLocationManager");
var enable = cllocationManger.locationServicesEnabled();
var status = cllocationManger.authorizationStatus();
plus.ios.deleteObject(cllocationManger);
if (enable && status != 2) {
····
} else {
uni.showModal({
title: '提示',
content: '请打开定位服务功能',
showCancel: false, // 不显示取消按钮
confirmText: "去打开", // 确认按钮文字
confirmColor:'#09c499',//删除字体的颜色
success() {
var UIApplication = plus.ios.import("UIApplication");
var application2 = UIApplication.sharedApplication();
var NSURL2 = plus.ios.import("NSURL");
var setting2 = NSURL2.URLWithString("App-Prefs:root=Privacy&path=LOCATION");
application2.openURL(setting2);
plus.ios.deleteObject(setting2);
plus.ios.deleteObject(NSURL2);
plus.ios.deleteObject(application2);
}
});
}
}
}

版权声明:站长 发表于 2023年5月16日 am10:11,最后更新时间2023-05-16 10:11:29。
转载请注明:uniapp里打开系统定位代码 | 影视导航

相关文章

暂无评论

暂无评论...