XML-файл androiodManifest имеет доступное расположение - PullRequest
0 голосов
/ 24 апреля 2019

Мое мобильное приложение в React Native. Я развернул свое приложение, используя выставку, и ссылка пришла на мой телефон. Все выглядит хорошо, когда я открыл свое приложение на моем iPhone и телефоне Android. Я развернул такое же приложение в Google Play, но в Google Play расстояние между текущей позицией и пунктом назначения телефона не является правильным. У меня есть следующий код в моем файле androidmanifest.xml:

manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.test">

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <application
      android:name=".MainApplication"
      android:label="@string/app_name"
      android:icon="@mipmap/ic_launcher"
      android:allowBackup="false"
      android:theme="@style/AppTheme">
      <activity
        android:name=".MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
      </activity>
      <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
    </application>

</manifest>

Этот файл androidManifest находится в моем mainProject \ android \ src \ mainandroidmanifest.xml

Я использую геодист для вычисления расстояния между текущим местоположением и пунктом назначения. Ниже мой код:

componentDidMount() {
    navigator.geolocation.getCurrentPosition(
      (position) => {
        this.setState({
          latitude: position.coords.latitude,
          longitude: position.coords.longitude,
          error: null,
        });
      },
      (error) => this.setState({ error: error.message }),
      { enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 },
    );
  }

 var geodist = require('geodist')
    var sLat= this.state.latitude;
    var sLong =  this.state.longitude;

    var dist = geodist({lat: sLat, lon: sLong}, {lat: item.LatL, lon: item.Long2}, 'mi')

LatL и Long2 исходят из моего файла JSON, а sLat / sLong - из этой библиотеки геодистов. Это значение в dist является правильным, когда я отправляю ссылку на свой телефон с помощью expo, но когда я использую Google Play, то dist неверен. Я создаю файл apk, который я загрузил в Google Play с помощью expo. Ниже приведена небольшая часть моего файла Json:

[


    {
        "id":"1",
        "fk": 1,
        "addr": "Test street",
        "phone": "911-111-1100",
        "LatL":"23.1111",
        "Long2":"-11.37",
        "Online": "",

        "image" : "test"
     }
]

Не уверен, что я делаю неправильно, потому что expo правильно рассчитывает расстояние, просто Google Play не показывает правильное расстояние.

Любая помощь будет высоко оценена.

...