diff --git a/src/platforms/app-plus/service/api/location/get-location.js b/src/platforms/app-plus/service/api/location/get-location.js index 85164ae490d16c7b4ee253eb34d47e206f30a76a..24978b687adc8f51f57072f148d323dbaa9bd284 100644 --- a/src/platforms/app-plus/service/api/location/get-location.js +++ b/src/platforms/app-plus/service/api/location/get-location.js @@ -53,6 +53,7 @@ export function getLocation ({ type = 'wgs84', geocode = false, altitude = false, + isHighAccuracy = false, highAccuracyExpireTime } = {}, callbackId) { const errorCallback = warpPlusErrorCallback(callbackId, 'getLocation') @@ -69,7 +70,7 @@ export function getLocation ({ errorCallback(e) }, { geocode: geocode, - enableHighAccuracy: altitude, + enableHighAccuracy: isHighAccuracy || altitude, timeout: highAccuracyExpireTime } ) diff --git a/src/platforms/h5/service/api/location/get-location.js b/src/platforms/h5/service/api/location/get-location.js index 447d9e53ce9dd8a41ef47a68bf8595e3c1544335..7a77e83dc67ebfb35f0fda7d48aeddbfbfdc8f14 100644 --- a/src/platforms/h5/service/api/location/get-location.js +++ b/src/platforms/h5/service/api/location/get-location.js @@ -14,6 +14,7 @@ import { export function getLocation ({ type, altitude, + isHighAccuracy, highAccuracyExpireTime }, callbackId) { const { @@ -24,7 +25,7 @@ export function getLocation ({ new Promise((resolve, reject) => { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(res => resolve(res.coords), reject, { - enableHighAccuracy: altitude, + enableHighAccuracy: isHighAccuracy || altitude, timeout: highAccuracyExpireTime || 1000 * 100 }) } else {