Geolocation watch position stops working seconds after platform ready


I’m using geolocation watch watchposition and have it triggered in a platform ready function. This seems to only trigger the GPS once and then it stops tracking. What could be the reason for this?
If I place it in the {} after the constructor it works all the time, but gives me a weird popup on iOS.

What should I do?