/**@class android.location.LocationProvider @extends java.lang.Object An abstract superclass for location providers. A location provider provides periodic reports on the geographical location of the device. <p> Each provider has a set of criteria under which it may be used; for example, some providers require GPS hardware and visibility to a number of satellites; others require the use of the cellular radio, or access to a specific carrier's network, or to the internet. They may also have different battery consumption characteristics or monetary costs to the user. The {@link android.location.Criteria} class allows providers to be selected based on user-specified criteria. */ var LocationProvider = { /** @deprecated Location provider statuses are no longer supported. */ OUT_OF_SERVICE : "0", /** @deprecated Location provider statuses are no longer supported. */ TEMPORARILY_UNAVAILABLE : "1", /** @deprecated Location provider statuses are no longer supported. */ AVAILABLE : "2", /** A regular expression matching characters that may not appear in the name of a LocationProvider @hide */ BAD_CHARS_REGEX : "[^a-zA-Z0-9]", /**Returns the name of this provider. */ getName : function( ) {}, /**Returns true if this provider meets the given criteria, false otherwise. */ meetsCriteria : function( ) {}, /** @hide */ propertiesMeetCriteria : function( ) {}, /**Returns true if the provider requires access to a data network (e.g., the Internet), false otherwise. */ requiresNetwork : function( ) {}, /**Returns true if the provider requires access to a satellite-based positioning system (e.g., GPS), false otherwise. */ requiresSatellite : function( ) {}, /**Returns true if the provider requires access to an appropriate cellular network (e.g., to make use of cell tower IDs), false otherwise. */ requiresCell : function( ) {}, /**Returns true if the use of this provider may result in a monetary charge to the user, false if use is free. It is up to each provider to give accurate information. */ hasMonetaryCost : function( ) {}, /**Returns true if the provider is able to provide altitude information, false otherwise. A provider that reports altitude under most circumstances but may occassionally not report it should return true. */ supportsAltitude : function( ) {}, /**Returns true if the provider is able to provide speed information, false otherwise. A provider that reports speed under most circumstances but may occassionally not report it should return true. */ supportsSpeed : function( ) {}, /**Returns true if the provider is able to provide bearing information, false otherwise. A provider that reports bearing under most circumstances but may occassionally not report it should return true. */ supportsBearing : function( ) {}, /**Returns the power requirement for this provider. @return {Number} the power requirement for this provider, as one of the constants Criteria.POWER_REQUIREMENT_*. */ getPowerRequirement : function( ) {}, /**Returns a constant describing horizontal accuracy of this provider. If the provider returns finer grain or exact location, {@link android.location.Criteria#ACCURACY_FINE} is returned, otherwise if the location is only approximate then {@link android.location.Criteria#ACCURACY_COARSE} is returned. */ getAccuracy : function( ) {}, };