React Native Карты — показывает, что местоположение пользователя не работает

#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:

Вам необходимо установить свое местоположение в симуляторе > Функции >> Местоположение >>> Пользовательские настройки местоположения, чтобы иметь возможность видеть свое местоположение, отмеченное на карте.