Привет, я использую приведенный ниже код для успешного получения местоположения пользователя, но в эмуляторе Android он не спрашивает пользователя, хотят ли они поделиться своим местоположением (даже после того, как я переустановил приложение).
Код отлично работает ... но мне бы очень хотелось, чтобы появилось стандартное предупреждение, в котором говорится: «Вы уверены, что хотите поделиться своим местоположением с приложением?»
Любое руководство будет оценено
navigator.geolocation.getCurrentPosition(
(pos) => {
console.info(pos.coords.longitude, pos.coords.latitude);





Я думаю, что разрешение на местоположение не отображается снова, если вы переустанавливаете приложение, потому что телефон все еще запоминает разрешения, предоставленные для приложения. Вы можете проверить, есть ли у приложения разрешение, в настройках Android с приложением (https://www.howtogeek.com/230683/how-to-manage-app-permissions-on-android-6.0/).
Может быть, этот код поможет вам
import { PermissionsAndroid } from 'react-native';
async function getLocation() {
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
'title': 'App',
'message': 'are you sure you want to share your location with the app ?'
}
)
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
// permission granted
// do code get location here.
navigator.geolocation.getCurrentPosition(
(pos) => {
console.info(pos.coords.longitude, pos.coords.latitude);
})
} else {
// permission denied
console.info("GPS permission denied")
}
} catch (err) {
console.warn(err)
}
}
Вы можете зайти в настройки приложения, чтобы сбросить настройки местоположения .... не нужно переустанавливать приложение. Кроме того, приведенный выше код бесполезен, потому что (а) всплывающее окно не может быть (легко) отклонено пользователем, поскольку оно не имеет необходимых кнопок (нейтральный / отрицательный / положительный) и (б) независимо от того, что пользователь выбирает из метода запроса их спросят снова, как только они нажмут navigator.geolocation. Очень странно. В любом случае спасибо за ваш вклад