#react-native #react-native-ios #react-native-maps #location-services
Вопрос:
Я использую собственные карты React для отображения карты на ios/Android.
Мне еще предстоит провести надлежащий тест на Android, но на ios я не могу заставить showsUserLocation
опору на самом деле показывать точку местоположения.
Я проследил за документами и убедился, что добавил NSLocationAlwaysAndWhenInUseUsageDescription
описание в файл Info.plist.
Мой файл Info.plist выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
...
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>We need to access your location to provide location specific points to visit</string>
...
</dict>
и мой вид карты инициализирован так:
<MapView
provider={PROVIDER_GOOGLE}
style={styles.map}
initialRegion={initial}
mapType={mapType}
onRegionChange={handleRegionChange}
onMapReady={() => setRegionReady(true)}
showsUserLocation={true} // here is what I thought should show it
showsMyLocationButton={true}
>
... // markers rendered here
</MapView>
Однако точки определения местоположения нет. Когда приложение загружается, оно запрашивает разрешение на просмотр местоположения, которое я предоставил, и я также проверил настройки, и у него должен быть доступ к местоположению «при использовании».
Я также попытался установить параметры «Имитировать местоположение» в Xcode в Лондон, Великобритания, но они по-прежнему не отображаются.
Есть ли что-нибудь, что я упускаю?
Комментарии:
1. Вы установили свое местоположение в симуляторе > Функции >> Местоположение >>> Пользовательские настройки местоположения?
2. У меня не было этого набора. Я просто установил его сейчас, перезагрузил и запустил новую сборку, но это не сработало
3. Ладно, просто нужно было перезапустить Xcode и sim-карту и сделать новую сборку снова, и это сработало! Спасибо! Если вы опубликуете его в качестве ответа, я могу отметить его как правильный?
Ответ №1:
Вам необходимо установить свое местоположение в симуляторе > Функции >> Местоположение >>> Пользовательские настройки местоположения, чтобы иметь возможность видеть свое местоположение, отмеченное на карте.