Skip to content

Most visited

Recently visited

navigation

Criteria

public class Criteria
extends Object implements Parcelable

java.lang.Object
   ↳ android.location.Criteria


A class indicating the application criteria for selecting a location provider. Providers maybe ordered according to accuracy, power usage, ability to report altitude, speed, and bearing, and monetary cost.

Summary

Constants

int ACCURACY_COARSE

A constant indicating an approximate accuracy requirement

int ACCURACY_FINE

A constant indicating a finer location accuracy requirement

int ACCURACY_HIGH

a constant indicating a high accuracy requirement - may be used for horizontal, altitude, speed or bearing accuracy.

int ACCURACY_LOW

A constant indicating a low location accuracy requirement - may be used for horizontal, altitude, speed or bearing accuracy.

int ACCURACY_MEDIUM

A constant indicating a medium accuracy requirement - currently used only for horizontal accuracy.

int NO_REQUIREMENT

A constant indicating that the application does not choose to place requirement on a particular feature.

int POWER_HIGH

A constant indicating a high power requirement.

int POWER_LOW

A constant indicating a low power requirement.

int POWER_MEDIUM

A constant indicating a medium power requirement.

Inherited constants

From interface android.os.Parcelable

Fields

public static final Creator<Criteria> CREATOR

Public constructors

Criteria()

Constructs a new Criteria object.

Criteria(Criteria criteria)

Constructs a new Criteria object that is a copy of the given criteria.

Public methods

int describeContents()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

int getAccuracy()

Returns a constant indicating desired accuracy of location Accuracy may be ACCURACY_FINE if desired location is fine, else it can be ACCURACY_COARSE.

int getBearingAccuracy()

Returns a constant indicating the desired bearing accuracy.

int getHorizontalAccuracy()

Returns a constant indicating the desired horizontal accuracy (latitude and longitude).

int getPowerRequirement()

Returns a constant indicating the desired power requirement.

int getSpeedAccuracy()

Returns a constant indicating the desired speed accuracy Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT.

int getVerticalAccuracy()

Returns a constant indicating the desired vertical accuracy (altitude).

boolean isAltitudeRequired()

Returns whether the provider must provide altitude information.

boolean isBearingRequired()

Returns whether the provider must provide bearing information.

boolean isCostAllowed()

Returns whether the provider is allowed to incur monetary cost.

boolean isSpeedRequired()

Returns whether the provider must provide speed information.

void setAccuracy(int accuracy)

Indicates the desired accuracy for latitude and longitude.

void setAltitudeRequired(boolean altitudeRequired)

Indicates whether the provider must provide altitude information.

void setBearingAccuracy(int accuracy)

Indicates the desired bearing accuracy.

void setBearingRequired(boolean bearingRequired)

Indicates whether the provider must provide bearing information.

void setCostAllowed(boolean costAllowed)

Indicates whether the provider is allowed to incur monetary cost.

void setHorizontalAccuracy(int accuracy)

Indicates the desired horizontal accuracy (latitude and longitude).

void setPowerRequirement(int level)

Indicates the desired maximum power level.

void setSpeedAccuracy(int accuracy)

Indicates the desired speed accuracy.

void setSpeedRequired(boolean speedRequired)

Indicates whether the provider must provide speed information.

void setVerticalAccuracy(int accuracy)

Indicates the desired vertical accuracy (altitude).

String toString()

Returns a string representation of the object.

void writeToParcel(Parcel parcel, int flags)

Flatten this object in to a Parcel.

Inherited methods

From class java.lang.Object
From interface android.os.Parcelable

Constants

ACCURACY_COARSE

Added in API level 1
int ACCURACY_COARSE

A constant indicating an approximate accuracy requirement

Constant Value: 2 (0x00000002)

ACCURACY_FINE

Added in API level 1
int ACCURACY_FINE

A constant indicating a finer location accuracy requirement

Constant Value: 1 (0x00000001)

ACCURACY_HIGH

Added in API level 9
int ACCURACY_HIGH

a constant indicating a high accuracy requirement - may be used for horizontal, altitude, speed or bearing accuracy. For horizontal and vertical position this corresponds roughly to an accuracy of less than 100 meters.

Constant Value: 3 (0x00000003)

ACCURACY_LOW

Added in API level 9
int ACCURACY_LOW

A constant indicating a low location accuracy requirement - may be used for horizontal, altitude, speed or bearing accuracy. For horizontal and vertical position this corresponds roughly to an accuracy of greater than 500 meters.

Constant Value: 1 (0x00000001)

ACCURACY_MEDIUM

Added in API level 9
int ACCURACY_MEDIUM

A constant indicating a medium accuracy requirement - currently used only for horizontal accuracy. For horizontal position this corresponds roughly to to an accuracy of between 100 and 500 meters.

Constant Value: 2 (0x00000002)

NO_REQUIREMENT

Added in API level 1
int NO_REQUIREMENT

A constant indicating that the application does not choose to place requirement on a particular feature.

Constant Value: 0 (0x00000000)

POWER_HIGH

Added in API level 1
int POWER_HIGH

A constant indicating a high power requirement.

Constant Value: 3 (0x00000003)

POWER_LOW

Added in API level 1
int POWER_LOW

A constant indicating a low power requirement.

Constant Value: 1 (0x00000001)

POWER_MEDIUM

Added in API level 1
int POWER_MEDIUM

A constant indicating a medium power requirement.

Constant Value: 2 (0x00000002)

Fields

CREATOR

Added in API level 1
Creator<Criteria> CREATOR

Public constructors

Criteria

Added in API level 1
Criteria ()

Constructs a new Criteria object. The new object will have no requirements on accuracy, power, or response time; will not require altitude, speed, or bearing; and will not allow monetary cost.

Criteria

Added in API level 1
Criteria (Criteria criteria)

Constructs a new Criteria object that is a copy of the given criteria.

Parameters
criteria Criteria

Public methods

describeContents

Added in API level 1
int describeContents ()

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(Parcel, int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.

getAccuracy

Added in API level 1
int getAccuracy ()

Returns a constant indicating desired accuracy of location Accuracy may be ACCURACY_FINE if desired location is fine, else it can be ACCURACY_COARSE.

Returns
int

getBearingAccuracy

Added in API level 9
int getBearingAccuracy ()

Returns a constant indicating the desired bearing accuracy. Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT.

Returns
int

getHorizontalAccuracy

Added in API level 9
int getHorizontalAccuracy ()

Returns a constant indicating the desired horizontal accuracy (latitude and longitude). Accuracy may be ACCURACY_LOW, ACCURACY_MEDIUM, ACCURACY_HIGH or NO_REQUIREMENT.

Returns
int

getPowerRequirement

Added in API level 1
int getPowerRequirement ()

Returns a constant indicating the desired power requirement. The returned

Returns
int

getSpeedAccuracy

Added in API level 9
int getSpeedAccuracy ()

Returns a constant indicating the desired speed accuracy Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT.

Returns
int

getVerticalAccuracy

Added in API level 9
int getVerticalAccuracy ()

Returns a constant indicating the desired vertical accuracy (altitude). Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT.

Returns
int

isAltitudeRequired

Added in API level 1
boolean isAltitudeRequired ()

Returns whether the provider must provide altitude information. Not all fixes are guaranteed to contain such information.

Returns
boolean

isBearingRequired

Added in API level 1
boolean isBearingRequired ()

Returns whether the provider must provide bearing information. Not all fixes are guaranteed to contain such information.

Returns
boolean

isCostAllowed

Added in API level 1
boolean isCostAllowed ()

Returns whether the provider is allowed to incur monetary cost.

Returns
boolean

isSpeedRequired

Added in API level 1
boolean isSpeedRequired ()

Returns whether the provider must provide speed information. Not all fixes are guaranteed to contain such information.

Returns
boolean

setAccuracy

Added in API level 1
void setAccuracy (int accuracy)

Indicates the desired accuracy for latitude and longitude. Accuracy may be ACCURACY_FINE if desired location is fine, else it can be ACCURACY_COARSE. More accurate location may consume more power and may take longer.

Parameters
accuracy int
Throws
IllegalArgumentException if accuracy is not one of the supported constants

setAltitudeRequired

Added in API level 1
void setAltitudeRequired (boolean altitudeRequired)

Indicates whether the provider must provide altitude information. Not all fixes are guaranteed to contain such information.

Parameters
altitudeRequired boolean

setBearingAccuracy

Added in API level 9
void setBearingAccuracy (int accuracy)

Indicates the desired bearing accuracy. Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT. More accurate location may consume more power and may take longer.

Parameters
accuracy int
Throws
IllegalArgumentException if accuracy is not one of the supported constants

setBearingRequired

Added in API level 1
void setBearingRequired (boolean bearingRequired)

Indicates whether the provider must provide bearing information. Not all fixes are guaranteed to contain such information.

Parameters
bearingRequired boolean

setCostAllowed

Added in API level 1
void setCostAllowed (boolean costAllowed)

Indicates whether the provider is allowed to incur monetary cost.

Parameters
costAllowed boolean

setHorizontalAccuracy

Added in API level 9
void setHorizontalAccuracy (int accuracy)

Indicates the desired horizontal accuracy (latitude and longitude). Accuracy may be ACCURACY_LOW, ACCURACY_MEDIUM, ACCURACY_HIGH or NO_REQUIREMENT. More accurate location may consume more power and may take longer.

Parameters
accuracy int
Throws
IllegalArgumentException if accuracy is not one of the supported constants

setPowerRequirement

Added in API level 1
void setPowerRequirement (int level)

Indicates the desired maximum power level. The level parameter must be one of NO_REQUIREMENT, POWER_LOW, POWER_MEDIUM, or POWER_HIGH.

Parameters
level int

setSpeedAccuracy

Added in API level 9
void setSpeedAccuracy (int accuracy)

Indicates the desired speed accuracy. Accuracy may be ACCURACY_LOW, ACCURACY_HIGH, or NO_REQUIREMENT. More accurate location may consume more power and may take longer.

Parameters
accuracy int
Throws
IllegalArgumentException if accuracy is not one of the supported constants

setSpeedRequired

Added in API level 1
void setSpeedRequired (boolean speedRequired)

Indicates whether the provider must provide speed information. Not all fixes are guaranteed to contain such information.

Parameters
speedRequired boolean

setVerticalAccuracy

Added in API level 9
void setVerticalAccuracy (int accuracy)

Indicates the desired vertical accuracy (altitude). Accuracy may be ACCURACY_LOW, ACCURACY_MEDIUM, ACCURACY_HIGH or NO_REQUIREMENT. More accurate location may consume more power and may take longer.

Parameters
accuracy int
Throws
IllegalArgumentException if accuracy is not one of the supported constants

toString

Added in API level 1
String toString ()

Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

Added in API level 1
void writeToParcel (Parcel parcel, 
                int flags)

Flatten this object in to a Parcel.

Parameters
parcel Parcel: The Parcel in which the object should be written.
flags int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.