Dela via


User Location for V8 Web Control

Note

Bing Maps Web Control SDK retirement

Bing Maps Web Control SDK is deprecated and will be retired. Free (Basic) account customers can continue to use Bing Maps Web Control SDK until June 30th, 2025. Enterprise account customers can continue to use Bing Maps Web Control SDK until June 30th, 2028. To avoid service disruptions, all implementations using Bing Maps Web Control SDK will need to be updated to use Azure Maps Web SDK by the retirement date that applies to your Bing Maps for Enterprise account type. For detailed migration guidance, see Migrate from Bing Maps Web Control SDK and Migrate Bing Maps Enterprise applications to Azure Maps with GitHub Copilot.

Azure Maps is Microsoft's next-generation maps and geospatial services for developers. Azure Maps has many of the same features as Bing Maps for Enterprise, and more. To get started with Azure Maps, create a free Azure subscription and an Azure Maps account. For more information about azure Maps, see Azure Maps Documentation. For migration guidance, see Bing Maps Migration Overview.

Obtaining a user's location can easily be done using the W3C Geolocation API. This API is exposed through the navigator.geolocation property in the browser. The browser will display a notification to the user the first time this API tries to get the users location, and ask permission to share this data. The geolocation class has the following static methods.

Name Return Type Description
getCurrentPosition(
successCallback:function,
errorCallback?:function,
opt?:PositionOptions)
Attempts to obtain the users location. If successful it will trigger the callback function. This callback will receive a Position object that contains coordinates of the user and possibly additional information such as accuracy speed, heading, altitude.
watchPosition(
successCallback:function,
errorCallback?:function,
opt?:PositionOptions)
number Monitors the users position and triggers the callback if the user location information changes. This method will return a number which is the ID of this task. It can be used to clear/stop this task.
clearWatch(watchId:number) Clears/stops a watch position task with the specified ID.

PositionOptions Object

Name Type Description
enableHighAccuracy boolean This tells the browser that it would like to receive the best possible results. This may result in slower response times or increased power consumption. Default is false.
timeout number The maximum length of time (expressed in milliseconds) that is allowed to pass from the call until the corresponding successCallback is invoked. Default is Infinity.
maximumAge number Indicates that the application is willing to accept a cached position whose age is no greater than the specified time in milliseconds. Default is 0.

Position Object

Name Type Description
coords Coordinate Contains the geographic coordinate information.
timestamp The time when the position object was acquired.

Coordinate Object

Name Type Description
latitude number The latitude coordinate value.
longitude number The longitude coordinate value.
altitude number The altitude in meters above the WGS84 ellipsoid. This value is not always returned.
accuracy number Accuracy level of the latitude and longitude coordinates in meters.
altitudeAccuracy number Accuracy of the altitude value in meters. This value is not always returned.
heading number The direction in which the device is pointed in degrees counting clockwise where true north is 0 degrees. This value is not always returned.
speed number The speed at which the device is travelling in meters per seconds. This value is not always returned.

Examples

See Also