当我们需要获取手机定位功能时可以使用
首先
npm install @react-native-community/geolocation
配置Android环境:
路径:android/app/src/main/AndroidManifest.xml
添加以下代码:
<!-- 定位 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
IOS:
cd ios && pod install && cd ..
确保模拟器的定位服务已启用:
- 打开 iOS 模拟器。
- 选择顶部菜单栏的 Features > Location,然后选择一个位置(例如 Apple)。
使用示例:
import { View, Text, SafeAreaView, Button } from 'react-native'
import React,{useState} from 'react'
import Geolocation from '@react-native-community/geolocation';
export default function App() {
const [latitude, setlatitude] = useState('')
const [longitude, setlongitude] = useState('')
const requestLocationPermission=()=>{
Geolocation.getCurrentPosition(
(position) => {
console.log(position);
setlatitude(position.coords.latitude)
setlongitude(position.coords.longitude)
},
(error) => {
console.log(error.code, error.message);
},
{ enableHighAccuracy: true, timeout: 15000, maximumAge: 10000 }
);
}
return (
<SafeAreaView>
<Button title='点击按钮获取定位' onPress={requestLocationPermission}/>
<Text>经度:{longitude}</Text>
<Text>维度:{latitude}</Text>
</SafeAreaView>
)
}