Excuse For fresh location-based apps : OEM

Whether it’s right location, wrong time, right time, wrong location, location is very common. Location-based apps are a pain, thanks to OEM’s(original equipment manufacturers), now I understand why Apple make their own equipment… ๐Ÿ˜

On the backlog, Geo-reminder, an app I dreamed of doing and started a Flutter project for it, as with all apps, visual components are the easiest to do, but hard to do well, with all Human Interaction science behind it, this is my story still pending success on how location-based app are NP-hard while it’s ubiquitous for apps to collect one’s location.

My use case was simple and not unique, you in a train you want to take a nap as I envisioned it, you would open the app, and be greeted with a map of your location, you just put a pin on the location where you want to be reminded of, like the train stop you get off or sweet home where you need to remember to pick up something, then boom when you near the area you’ll get a notification, if you in the train vibration wakes you up, if you at home, remember to pick up the shoes you left…

Simple right guys?, on man I went straight to the code, no requirements gathering needed, Flutter was hot that was my swift knife for the app, on I journeyed on building the application, firing Android studio, it was not winter, suddenly my Asus laptop fan started making noise and heat, yeah we know how that goes windows people haha.

For testing, I was using a Huwaei P20 pro with an outdated Android version, and thank God Google services was still on it because working with Android location it’s needed to receive location from the device. The second device I used was my wife’s Samsung Note 10 lite, shout out to Samsung with the new Android Skin, aka One UI, love you guys you give Android phones life after the contract is finished and can’t afford an upgrade

With all the setup ready and the app running boom, android kills your service of collecting location and you have to register through their service and subscribe to get the location event in near real-time, that’s fine and fair, should be no biggy, gateway mentality Android, now that’s sort fire away again, boom the OEM with its battery-saving service is not unified, on my Huwaei the app didn’t last long, while on my wife’s Samsung it lasted a bit longer running as a background service, man OEM killed my desire for this app, with battery saving techniques that hinder android Unified ways of doing things and handling services.

Things might change in the future, maybe I don’t know how to do the location service properly, but I stand by my argument that OEM’s implementation of Battery saving and other things hinder app developers from making apps for the people, Android stands for unifying things and OEM’s should stick to supporting the vision, so it enables us to make more application that give us same behaviors in different devices.

Cloud keeping us all night, while it’s automated – Am apart – sfi