I am developing an app that uses the Cordova plugin and Wikitude SDK 8.3. The app uses RelativeLocation GeoObjects. I developed it testing on iOS 12 using multiple devices. On iOS the relative location behaves as expected - the objects are placed at the position, stay put, (occasionally jump when my phone updates location but that's expected), and when I pan the camera around the objects stay where they are.
I recently bought a Google Pixel 3a to test the app on the latest version of Android. I accept the GeoLocation permissions and all. The RelativeLocation GeoObjects have some odd behavior though:
1) When they are on the screen the constantly move in a smooth manner from left to right and back.
2) When I pan my camera they follow my view up until a certain point and then they stop.
3) Even the object that is set using specific lat/long values is way off and moves with the object as I pan. As in I have a marker set to a specific lat/long value and when I move my camera it moves with it.
I debounce the setLocation and LocationChanged functions so they aren't called constantly. I am using the latest Android/Java SDK. I am indoors.
I can send a video within the next few days if it helps, but I want to ask first:
Has anyone else experienced a similar issue? Is there a known fix for the problem I am fixing? What could be causing this to happen on Android but not on iOS?
In addition to the above problem. When I try to use the InstantTracking feature (which I copied from the sample app) it works perfectly on my iPhone with iOS 12.2, however I get an error when using it with Android.
Please note, when I get the following error I am in the same position, and looking at the same thing as with my iPhone.
On iPhone there is no error. On my new Google Pixel 3a running Android I receive:
Again, this feature works perfectly in the same room with iOS.
Sorry for writing 2 different issues in one post. This has become more of a moving from iOS to Android issues post.
Is there anything with a new Android phone that I should be doing to 1) Allow the RelativeLocation / GeoLocation to act accurately / normally as it does on iOS and 2) Allow for InstantTracking because the same app and scene works flawlessly on iOS.