目前使用的是 import Geolocation, { GeolocationError, GeolocationResponse } from '@react-native-community/geolocation';
function getLocation() {
return new Promise<Location>((resolve) => {
Geolocation.getCurrentPosition(
(info: GeolocationResponse) => {
// console.log(`[Geolocation] location: ${JSON.stringify(info)}`);
let location = info.coords;
// 地球坐标系转火星坐标器
var marsLocation = wgs2mars(location);
resolve(marsLocation);
},
(error: GeolocationError) => {
global.log(`[Geolocation] error: ${error.message}`);
resolve({} as Location);
},
);
});
}
发现在安卓机上有以下问题:
1,如果将高精度 enableHighAccuracy 设置为 true 的话,在安卓机子上将 gps 关闭后再打开会识别不到 gps 打开,拿到的数据一直为{}(我用是否为{}判断 gps 开关状态)。
2,当我把经纬度打在屏幕上测试,ios 机型会随着走动变化经纬度,但是安卓机型可能过了千米才会变动一次,且十分不准备。
已做地球坐标系转火星坐标器处理。
请问大家做 app 端定位需求的时候是怎么处理的呀?大感谢。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/721075
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.