5 ms·
>Most system APIs are backported through Google's libraries, and for many others the standard compat library has shims that avoid most version checks. Just 6 m
by reader_mode 5y ago
>Most system APIs are backported through Google's libraries, and for many others the standard compat library has shims that avoid most version checks.
Just 6 months ago I took a small side project to port a web app to mobile and add some native functionality. I need to connect the user to a WiFi hotspot (industrial device controller) from code - the new APIs were absolutly not backwards compatible, the old APIs were just killed in Q, even worse the capabilites present in the old APIs (controlling WiFi networks) half wroked on older devices, depending on vendor (eg. not working on Samsung, working on a Pixel, etc.)
iOS didn't expose the level of controll straight up and I was able to explain to client that that's just not possible. We saw Android was all over the place in this regard, but because a competitor had a halfassed version that only worked on some devices the client insisted it was possible to implement this on Android. It took us a week to figure out that the whole thing is an unmanageable mess and demo to the client that the competitor is broken in so many scenarios and that we should just use the system UI like we do on the iOS.
>On iOS, these apps would probably not even be available.
See but I prefer this to Android "it's possible because we were wrong, now we leave it out there but you can't do it going forward". Why not just blacklist it in app store and prevent new apps from using it on review ? Also it's obvious they don't have any sort of certification testing for these APIs because they just straight out don't work on various vendors - they could easily mandate that to qualify for Google services on your device you need to implement system APIs and pass the test suite to solve these inconsistencies.
- AnthonyMouse 5y agoThe problem with this entire mess is that there are things some trustworthy third party software needs to do, but are open to abuse by untrustworthy software using them for nefarious purposes. In theory the answer to this is for the app reviewers to scrutinize any app using those capabilities to make sure it's not abusing them, but in practice the app approval process is actually kind of crap and doesn't do a good job of making those distinctions. Your remaining alternatives are to prohibit that thing from happening whatsoever, which pisses people off, or to make it possible but a huge miserable ordeal, which pisses people off.
- Buttons840 5y agoThe solutions is so simple it leaves Google shaking in their boots. Make the ability to use the network an app permission that can be denied. Shady app records my call? Who cares? It can't send the data anywhere. (Assuming the permission is properly implemented.)
- mleonhard 5y agoGoogle could make Android great. It has the resources and talent. Unfortunately, the organization is too dysfunctional to do it. The day Google starts focusing on its users will be a good day for humanity and for Google shareholders. I doubt it will ever happen.
- jbverschoor 5y agoNo they can’t. Just having people and resources is not a guarantee to be able to make things great. They should first start restoring “don’t be evil”
- berkes 5y agoGoogle is focusing on its users. You are probably falling for the misdirection Google lay out for you. Its users are the advertisers, the licence buyers and data-consumers. The person operating an android phone, getting navigatinal directions or performing a search is not their user. 'The product' as is being repeated.