Enum Class GeoUniq.TrackingProfile.SpeedAdaptivity

java.lang.Object
java.lang.Enum<GeoUniq.TrackingProfile.SpeedAdaptivity>
com.geouniq.android.GeoUniq.TrackingProfile.SpeedAdaptivity
All Implemented Interfaces:
Serializable, Comparable<GeoUniq.TrackingProfile.SpeedAdaptivity>, Constable
Enclosing class:
GeoUniq.TrackingProfile

public static enum GeoUniq.TrackingProfile.SpeedAdaptivity extends Enum<GeoUniq.TrackingProfile.SpeedAdaptivity>
Enumeration that defines the Speed-adaptiveness attribute for GeoUniq.TrackingProfile.

Speed adaptiveness allows not to drain too much battery when the device moves at high speed for long time. It consists in gradually decreasing the tracking granularity (i.e. worse granularity), with respect to the real value set for the UPDATING SPATIAL INTERVAL parameter, when the device moves at high speed for a while.

Values of this enumeration indicate whether speed-adaptive tracking must be enabled or not and, if yes, at which level. When enabled, GeoUniq SDK automatically manages speed-adaptive tracking according to smart and optimized algorithms. However, an application can choose to set a value other than the default one (i.e. AVERAGE) if it has special requirements.

  • Enum Constant Details

    • DISABLED

      public static final GeoUniq.TrackingProfile.SpeedAdaptivity DISABLED
      Speed-adaptive tracking is disabled.

      When setting this value GeoUniq SDK will always consider the real value set for the UPDATING SPATIAL INTERVAL parameter as background tracking granularity.

      Setting this value is discouraged. However, it is provided for those applications which require high granularity when the User moves quickly, generally in a vehicle. If this is the case, an application could set this value while requiring a low tracking granularity (e.g. 500 meters or more) and then exploit motion activity detection (see GeoUniq.registerMotionActivityListener(Class, MotionActivity.Type[])) to get informed of a User starting moving in a vehicle and decrease the UPDATING SPATIAL INTERVAL at runtime.

    • LOW

      public static final GeoUniq.TrackingProfile.SpeedAdaptivity LOW
      Speed-adaptive tracking is enabled with a low adaptiveness level.

      Setting this value makes GeoUniq decrease the actual tracking granularity significantly only if the device moves very quickly (generally more than 100 Km/h) for a long time (about 30 minutes).

    • AVERAGE

      public static final GeoUniq.TrackingProfile.SpeedAdaptivity AVERAGE
      Speed-adaptive tracking is enabled with an average adaptiveness level.

      Setting this value makes GeoUniq decrease the actual tracking granularity when the device moves quickly enough (about 70 Km/h) for a while (about 15 minutes), which generally indicates that the User started a trip.

      This is the default value used by GeoUniq SDK.

    • HIGH

      public static final GeoUniq.TrackingProfile.SpeedAdaptivity HIGH
      Speed-adaptive tracking is enabled with an high adaptiveness level.

      Setting this value makes GeoUniq decrease the actual tracking granularity when the device moves quickly (about 50 Km/h) even for little time (about 5 minutes).

      An application could set this value in order to further reduce battery drain if it is mainly interested in the location of the User when he is walking or dwelling.

  • Method Details

    • values

      public static GeoUniq.TrackingProfile.SpeedAdaptivity[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static GeoUniq.TrackingProfile.SpeedAdaptivity valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null