У меня есть приложение, которое разработано в Reaction-JS.Я хочу интегрировать это приложение в response-native-webview .все, что я прав, но у меня есть две проблемы.
1- как я могу получить доступ к текущему местоположению пользователя в реагировать-родной-веб-просмотр.
2- как я могу отладить свою реакцию-js (веб-страница) приложение в реагировать на родную веб-страницу.
для первой проблемы
, если я запускаю веб-страницу в мобильном браузере и нажимаю на это событие, яполучая текущее местоположение пользователя и в то же время, когда мое реагирующее на родное приложение начало работы, я запрашиваю разрешение для текущего местоположения, поэтому в react-native-debugger
я получаю текущее местоположение пользователя.аналогичный пример, но это относится к реактивному-нативному.
Точная проблема в том, как я могу получить доступ к текущему местоположению веб-просмотра в реагирующем-веб-представлении
для второй проблемы
когда я нажимаю на событие, чтобы выбрать текущее местоположение, оно не показывает текущее местоположение, поэтому ** я хочу посмотреть, что является ошибкой / ответом этого события **.потому что он находится в веб-обозревателе, я могу получить доступ к журналам реакции-натива в реагирующем-отладчике, но не вижу журналы просмотра веб-страниц в отладчике. Я также следовал этому , но я не знаю, где его разместитьКонфигурационный код Android.
мой реактивный-родной код
import React, {Component} from 'react';
import {PermissionsAndroid} from 'react-native';
import { WebView } from "react-native-webview";
export default class App extends Component {
constructor(props){
super(props);
// To see all the requests in the chrome Dev tools in the network tab.
XMLHttpRequest = GLOBAL.originalXMLHttpRequest ?
GLOBAL.originalXMLHttpRequest :
GLOBAL.XMLHttpRequest;
// fetch logger
global._fetch = fetch;
global.fetch = function (uri, options, ...args) {
return global._fetch(uri, options, ...args).then((response) => {
console.log('Fetch', { request: { uri, options, ...args }, response });
return response;
});
};
}
async requestLocationPermission() {
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
'title': 'Location Access Permission',
'message': 'Stanplus would like to use your location ' +
'so you we track you.'
}
)
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("You can use the location");
if (typeof window !== 'undefined' && typeof window.navigator !== 'undefined' && navigator.geolocation) {
navigator.geolocation.getCurrentPosition(
(position) => {
console.log(position.coords.latitude,'success');
},
(error) => {
console.log(error,'fail')
},
{ enableHighAccuracy: false, timeout: 5000, maximumAge: 10000 }
);
}
} else {
console.log("Location permission denied")
}
} catch (err) {
console.warn(err)
}
}
componentDidMount() {
this.requestLocationPermission();
}
render() {
return (
<WebView
source={{uri: 'https://3fa4f958.ngrok.io/steptwo'}}
style={{marginTop: 20}}
onMessage={(event)=> console.log(event.nativeEvent.data)}
scalesPageToFit={true}
javaScriptEnabled = {true}
/>
);
}
}
мой React.js код, который обращается к текущему местоположению
if (navigator.geolocation) {
alert('event clicked');//in react-native app its showing the alert
navigator.geolocation.getCurrentPosition(
//but inside here react-native can't execute because of location permission issue
position => {
let latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
let geocoder = new window.google.maps.Geocoder();
//do other stuff----------
}
)
}
** Я хочу получить текущее местоположение, когда пользователь нажимает на событие веб-страницы внутри собственного приложения реакции и как отлаживать код веб-просмотра **
, пожалуйста, помогите застрявшим с 2 дня):