in www/android/geolocation.js [50:72]
watchPosition: function (success, error, args) {
const pluginWatchId = utils.createUUID();
const win = function (deviceApiLevel) {
// Workaround for bug specific to API 31 where requesting `enableHighAccuracy: false` results in TIMEOUT error.
if (deviceApiLevel === 31) {
if (typeof args === 'undefined') args = {};
args.enableHighAccuracy = true;
}
const geo = cordova.require('cordova/modulemapper').getOriginalSymbol(window, 'navigator.geolocation'); // eslint-disable-line no-undef
pluginToNativeWatchMap[pluginWatchId] = geo.watchPosition(success, error, args);
};
const fail = function () {
if (error) {
error(new PositionError(PositionError.PERMISSION_DENIED, 'Illegal Access'));
}
};
const enableHighAccuracy = typeof args === 'object' && !!args.enableHighAccuracy;
exec(win, fail, 'Geolocation', 'getPermission', [enableHighAccuracy]);
return pluginWatchId;
},