Interface LocationDataSupplier

  • All Implemented Interfaces:

    
    public interface LocationDataSupplier
    
                        

    This class is the bridge for location data between native and cpp. Some location classes(gps, ble, geofence) need native services, and since all start operations are handled by cpp, we need a system to go back and forth between cpp and native. E.g for geofence - Native locationDataSupplier is created, and assigned to cpp LocationDataSupplier - Cpp GeofenceManager fetches the most relevant geofences - It calls the setGeofencesToRegister method of cpp LDS, which relays this call to its native wrapper - When a geofence is entered, the service triggers and passes the event to LDS, which relays it to cpp LDS, which gives it to its listeners and processes it.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract PositioningTypes.PositioningServiceState getState() Current positioning service state (bluetooth status)
      abstract void startAndroidOBackgroundScan() Starts the le scanning cycle for android O and higher This needs to be public, to be called from JobScheduler and JobService
      abstract void stopAndroidOBackgroundScan() Stops the le scanning cycle for android O and lower This needs to be public, to be called from JobScheduler and JobService
      abstract void processBackgroundLeScan(BluetoothDevice device, int rssi, Array<byte> scanRecord) To process the scan results that are retrieved by job service when on background
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • startAndroidOBackgroundScan

         abstract void startAndroidOBackgroundScan()

        Starts the le scanning cycle for android O and higher This needs to be public, to be called from JobScheduler and JobService

      • stopAndroidOBackgroundScan

         abstract void stopAndroidOBackgroundScan()

        Stops the le scanning cycle for android O and lower This needs to be public, to be called from JobScheduler and JobService