breautek commented on issue #273:
URL: 
https://github.com/apache/cordova-plugin-geolocation/issues/273#issuecomment-2310574554

   > So, at the moment, no Google Play store in the process yet. And, no errors 
returned, just simply the wrong location (Pakistan). This phone's location 
using Google maps successfully obtains the correct geolocation.
   
   Google Play Services != Google Play store. Google Play Services is service 
for Google APIs which depending on the underlying geolocation implementation 
being used might use Google APIs (The [Fused Location Provider 
API](https://developers.google.com/location-context/fused-location-provider#:~:text=The%20fused%20location%20provider%20is,information%20that%20your%20app%20needs.)).
 I do not know what geolocation implementation the browser actually uses, I'm 
just making an educated guess since the webview is a Google product.
   
   > And, no errors returned, just simply the wrong location (Pakistan).
   
   Just another idea that you can check/confirm... I would confirm that your 
`maximumAge` setting is something sensible if it's explicitly set. If it's set 
to `0` which is also the default, then it instructs the API to always fetch a 
fresh point from the GPS provider API. If it's a non-zero positive integer, 
then it may return a cached position. There is no guarentee how fresh the 
provided location will be, other than it will be within the maximumAge setting. 
It could give you an older timestamp (potentially one that was erroneous to 
begin with) even if there is a "fresher" location cached available. The unit is 
in milliseconds.
   
   If it's explicitly set to something other than 0, I'd consider testing with 
`0` maximumAge.
   
   > And, no errors returned, just simply the wrong location (Pakistan). 
   
   Just to point this out there in case if it isn't obvious, this suggest that 
the API believes it is working as intended. You should also check the 
`accuracy` value from the location event. If it's returning a point located in 
Pakistan but the accuracy reading is a value of `10000`, that means that the 
the true location of the device is believed to be within a 10,000m (ten 
thousand) radius which is obviously not very accurate.
   
   So if the device is clearly not in Pakistan but the true location is within 
the `accuracy` reading of Pakistan, then the API is working as intended.
   
   Reasons for high-value accuracy readings (which suggest that the point is 
not accurate) will include environmental factors out of your control, but if 
you're also seeing very high accuracy readings (like 1000m+) then it may also 
suggest that the `FINE` location permission isn't actually granted by the user 
and the only location points you are receiving is `COARSE` location which is a 
(very) approximate area.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org
For additional commands, e-mail: issues-h...@cordova.apache.org

Reply via email to