jorre
October 23, 2014, 10:35am
1
I’m using the plugin org.apache.cordova.geolocation
This works fine on ios, but for Android it’s not firing. Am I correct that I need to set permissions like stated here: http://cordova.apache.org/docs/en/2.5.0/cordova_geolocation_geolocation.md.html
They mention:
app/res/xml/config.xml
<plugin name="Geolocation" value="org.apache.cordova.GeoBroker" />
app/AndroidManifest.xml
<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" />
I was wondering if I need to edit the AndroidManifest.xml and config.xml manually in the build folder?
Can I also set these permission in my ionic folder in /config.xml?
I’m confused where I can or need to set these options. Thanks for helping out!
I’m asking this because I don’t put the platforms/android folders in version control (since they are changing on every build). On the other hand I’d like to put these permission settings under version control so that it works on another dev machine as well.
update : I have set the options in the files mentioned above, but geolocation is not firing on android. No idea what’s wrong. Can I check logs somehow on the device itself?
kai23
October 23, 2014, 10:47am
2
Just go into your project and type :
cordova plugin add org.apache.cordova.geolocation
and then you can use the geolocation, with ng-cordova for example http://ngcordova.com/docs/#Geolocation
PS : your doc is a bit old, you can use this one - https://github.com/apache/cordova-plugin-geolocation/blob/master/doc/index.md
jorre
October 23, 2014, 12:41pm
3
Aha, so permissions aren’t needed at all?
Thanks a lot!
kai23
October 23, 2014, 1:10pm
4
well, I don’t remember having anything else to do to make it work, but I could be wrong.
And just as you did, the platforms/*
and plugins/*
folders are in my gitignore
file
2 Likes
grege
December 27, 2014, 9:13am
5
Hi @jorre - did you get geolocation working on Android?
I recently migrated a project to beta 14 and whereas this worked fine before, it no longer works on Android for me (works fine in iOS). I also updated to Cordova CLI to version 4 and also both Cordova Android and Cordova iOS, so things could have changed in a number of places.
Did you get it working?
grege:
o
You should switch off and switch on your phone once. Crazy but works
grege
December 29, 2014, 10:41am
7
Thanks. Yeah - it just went away after restarting phone.
Is there any workarounds without having to do this?
Several changes made to Cordova requires new permissions, including Cordova whitelist plugin, find more about it in another forum question:
Several things changed since last time this post was active.
I. First of all, geolocation works with Ionic (it was never under question). Cordova.js file was also never a problem. If you want to get a correct location just wrap you code into device ready event.
II.Use ngCordova Geolocation plugin
III.If you’re using Cordova 4.0 + version make sure to install Cordova Whitelist plugin, Google Maps will not work with it.
IV. Whitelist plugin comes with new HTML5 meta tag, you MUST include it if…
And just as you did, the platforms/* and plugins/* folders are in my gitignore file wink
This worked! Thank you so much!
But beyond that, I had to include my plugin list in file “package.json ”
YES THIS WORKED!. You will be prompted for permissions when you launch the app.
I was able to easily use HTML5
https://www.w3schools.com/html/html5_geolocation.asp
For visual studio, I needed to add this for cordova (anyway)
https://marketplace.visualstudio.com/items?itemName=MadsKristensen.NPMTaskRunner
Then I added the location plugin doing this:
https://taco.visualstudio.com/en-us/docs/manage-plugins/#Adding
and it worked.
Thanks a lot!
I hope my post helps someone else using ionic or cordova in visual studio!
What worked for me was typing this into project folder (Requires cordova 5.0+ ):
cordova plugin add cordova-plugin-geolocation
instead of this:
cordova plugin add org.apache.cordova.geolocation
sir i got 1. message: “application does not have sufficient geolocation permissions.” error do you how to fix ?