0
votes

I know the way to use locationListener and triggering the GPS is done like that:

mapboxMap.setMyLocationEnabled(true);

I want to open the locationListener at app start, but I don't want to use the map in the startActivity. Just using the locationListener without map.

How can I do with Mapbox ?

2

2 Answers

0
votes

You can use an instance of LocationEngine to acquire location updates without showing the map.

final LocationEngine locationEngine = new LostLocationEngine(this);
locationEngine.setPriority(LocationEnginePriority.HIGH_ACCURACY);
locationEngine.addLocationEngineListener(new LocationEngineListener() {
  @Override
  public void onConnected() {
    locationEngine.requestLocationUpdates();
  }

  @Override
  public void onLocationChanged(Location location) {

  }
});
locationEngine.activate();

Make sure that once you finish getting the location information needed or your activity gets destroyed you remove all listeners, stop requesting updates and deactivate the engine.

-1
votes

The answer is no! You cannot do it and I recommend you should not do it as it will increase your apk size a lot. If you just need the location listener, there're a lot of libraries which can do it for you as: Smart Location Library:

SmartLocation.with(context).location()
.start(new OnLocationUpdatedListener() { ... });