I'm having an issue with my android emulator. When I close and re-open my app, the location is not sent automatically. I have to go into Extended Controls -> Location and click the 'Send' button for the Ionic Geolocation getCurrentPosition function to receive it.
When I boot up the android emulator and the app opens for the first time, this is not necessary. Any idea how to send the location automatically no matter what?
Generally for the Testing of Plugins we need to verify in the real device, but as your original question about using it in Emulators, for this to work out ,
Try to clear the cordova Cache ( if you are using Visual Studio , you can do it like Tools->Options )
Try to add watchPosition function with enableHighAccuracy : true
navigator.geolocation.watchPosition(onSuccess, onError, { timeout:40000, enableHighAccuracy: true });
Update :
After a quick googling , found this link , It states that :
Starting with Chrome 50, Chrome no longer supports obtaining the user's location using the HTML5 Geolocation API from pages delivered by non-secure connections. This means that the page that's making the Geolocation API call must be served from a secure context such as HTTPS.
A possible solution can be like :
By adding appropriate permissions on Android platform, open your project, search for AndroidManifest.xml
and add these lines:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
For more Info Read this article and this thread
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With