如何在本机反应中获得当前位置的准确纬度和经度

Posted

技术标签:

【中文标题】如何在本机反应中获得当前位置的准确纬度和经度【英文标题】:How to get accurate lat and long of current location in react native 【发布时间】:2020-05-29 13:26:23 【问题描述】:

我想获取我当前位置的latitudelongitude。为此,我安装了react-native-geolocation 并根据其文档实施。但它给出了错误的latitudelongitude。 react-native-geolocation-service 也是如此。

这是我试过的代码

import React from 'react';
import  StyleSheet, Text, View, Alert  from 'react-native';
import Geolocation from '@react-native-community/geolocation';

export default class GeolocationExample extends React.Component 
  state = 
    latitude: 'unknown',
    longitude: 'unknown',
  ;

  componentDidMount() 

   Geolocation.getCurrentPosition(
      position => 
        const latitude = JSON.stringify(position.coords.latitude);
        const longitude = JSON.stringify(position.coords.longitude);
        this.setState( latitude, longitude );
      ,
      error => Alert.alert('Error', JSON.stringify(error)),
       enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 ,
    );
  

  render() 
    const  latitude, longitude  = this.state;
    console.log(latitude, longitude);

    return (
      <View>
        <Text>
          <Text style=styles.title>latitude: </Text>
          this.state.latitude
        </Text>
        <Text>
          <Text style=styles.title>longitude: </Text>
          this.state.longitude
        </Text>
      </View>
    );
  


【问题讨论】:

【参考方案1】:

使用这个https://www.npmjs.com/package/react-native-get-location。这将为响应式应用程序获取准确的位置

【讨论】:

请为任何链接添加上下文,以便您的答案是独立的,这意味着答案需要在答案本身中。见"Provide context for links"。如果您可以在此处用自己的话回答问题并仅作为参考链接,那将是更可取的。它是如何工作的?它是如何使用的?展示它如何回答问题。【参考方案2】:

您可以使用https://github.com/timfpark/react-native-location。

它在 android 上具有 Google 推荐的 Google Fused Location api 选项。您必须在应用级别的 build.gradle 文件中添加以下模块

实现“com.google.android.gms:play-services-base:16.0.1”

实现“com.google.android.gms:play-services-location:16.0.0”

您可以将“desiredAccuracy”设置为“highAccuracy”,对于 android 和对于 ios “best”

【讨论】:

以上是关于如何在本机反应中获得当前位置的准确纬度和经度的主要内容,如果未能解决你的问题,请参考以下文章

反应本机(IOS)。我需要更新和打印值纬度和经度

如何从我的 android 应用程序中尽快获得准确的纬度/经度?

GPS位置在本机反应中波动

如何获得当前的纬度和经度?

如何从纬度/经度获取附近的位置?

如何同时使用 GPS 和网络提供商在 Android 中获取当前位置的纬度和经度值