Как использовать макет локации в React Native - Android - PullRequest
1 голос
/ 11 января 2020

Я пытаюсь написать собственный модуль реагирования для изменения местоположения GPS в android студии. Я устанавливаю разрешение и задаю имя приложения в настройках макета разработчика. После этого также, это не работает и также не получает никакой ошибки. Это мой пример кода,

    @ReactMethod
    private Context mContext;
    public void mockLocation(String gps, Callback callback) {
        LocationManager mLocationManager = (LocationManager)mContext.getSystemService(Context.LOCATION_SERVICE);
          mLocationManager.removeTestProvider(LocationManager.GPS_PROVIDER);
          mLocationManager.addTestProvider
                  (
                          LocationManager.GPS_PROVIDER,
                          "requiresNetwork" == "",
                          "requiresSatellite" == "",
                          "requiresCell" == "",
                          "hasMonetaryCost" == "",
                          "supportsAltitude" == "",
                          "supportsSpeed" == "",
                          "supportsBearing" == "",

                          android.location.Criteria.POWER_LOW,
                          android.location.Criteria.ACCURACY_FINE
                  );

          Location newLocation = new Location(LocationManager.GPS_PROVIDER);

          newLocation.setLatitude (22.5726);
          newLocation.setLongitude(88.3639);

          newLocation.setAccuracy(500);

          mLocationManager.setTestProviderEnabled
                  (
                          LocationManager.GPS_PROVIDER,
                          true
                  );

          mLocationManager.setTestProviderStatus
                  (
                          LocationManager.GPS_PROVIDER,
                          LocationProvider.AVAILABLE,
                          null,
                          System.currentTimeMillis()
                  );

          mLocationManager.setTestProviderLocation
                  (
                          LocationManager.GPS_PROVIDER,
                          newLocation
                  );
        callback.invoke("Location changed");
      } 

И мой код реакции,

componentDidMount() {
    RNNativeToastLibrary.mockLocation("gps", (res) => {
      console.log(res)
    });
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...