Also since Android 7 they started locking down what was possible to access with the NDK, any attempt to link against anything not listed as official NDK API will terminate the application.
With Android P they are doing the same to Java apps that make use of reflection to access non-public APIs or work around bugs due to lack of updates.
All of those apps exist in AOSP and have many open source equivalents not developed by Google. The platform that those apps run on is just as open now as it was in the G1 days.
> The platform that those apps run on is just as open now as it was in the G1 days.
It never was open.
Sure, Google ups a bunch of source code to AOSP after the release of a new version but there is no actual OSS-style development going on. All development is behind closed doors, only done by Google and the public cannot contribute.
I cannot check out the latest development version of Android from github, fix some issues and send a PR. It's all a one-way street.
Agreed. It might have made sense to do development behind closed doors in the early days with the mobile patent war raging, but now that most advances are in apps and services on top of the platform instead of in the platform itself and now that Apple is way behind in features and usability and has no way to catch up, they might as well switch to the Chrome development model, or at least the Fuchsia model where the roadmap and design discussion is closed but the code is entirely open.
My team of ten went from majority iPhone to all but two on Pixels with the last two saying they will switch on their next upgrade. It's not due to cost — the iPhone X or the Pixel costs nothing to the employee. It's due to sheer usability.
The Pixel 2 is not an AOSP device, just like the Galaxy 8 is not an AOSP device. Why would you think you get the source for all the third party apps?
> Im the days of the G1, the actual Google Talk and Google Search apps were open, the Google Books app was open too!
Those apps as they were are still open (the Google Talk app was/is actually a multiprotocol messenger), though I don't remember a Google Books in AOSP. Even better, there are now superior equivalents to all of these that are also open source.
Because the G1 was an AOSP device, and so was the Nexus One, and so was the Nexus S.
I was barely in middle school when the G1 came out, I saw Android morph from the promised solution as entirely open source platform to what we have today, where the platform and base apps are all proprietary.
No, none of those were AOSP devices either. They all included Android Market and Gmail, as the most obvious examples.
The platform remains entirely open. That's how Chinese people are able to use Android even though Google does not do business there. You confuse the platform with the apps and services that run on it.
By now you can’t access the stepcounter, or movement data, or most raw sensors, you can’t run in the background, you can’t access location (except for raw GPS, not even A-GPS) without proprietary libraries.
Hell, you can’t even use the latest OpenGL without proprietary libraries.
> If you want to do WiFi Geolocation, you now need to use Google Play Services.
This was always using Google's proprietary data, even in the G1 days. They split it out into Play Services, so Chinese phones using another provider would be possible.
> If you want to use background notifications, you now need to use Google Play Services.
Background notifications weren't even possible on the G1 when it launched. When background notifications were first made available, they used a Google service and were never part of AOSP for that reason. Chinese phones use other push services inside the firewall.
> If you want to use shared library of openssl, you now need to use Google Play Services.
This is because Google now updates that library for security. If someone else updates the shared library (because you're in China, for example), you can call that version. Or you can just bundle the library in your app.
> By now you can’t access the stepcounter, or movement data.
None of those existed on the G1 and are simply sensor fusion implementations on the open sensor APIs.
> Hell, you can’t even use the latest OpenGL without proprietary libraries.
> This was always using Google's proprietary data, even in the G1 days. They split it out into Play Services, so Chinese phones using another provider would be possible.
Incorrect, in the past your apps could access the raw data and feed it into Mozilla’s Geolocation APIs. This is not possible anymore (but returning in limited form with 9.0).
> Background notifications weren't even possible on the G1 when it launched. When background notifications were first made available, they used a Google service and were never part of AOSP for that reason. Chinese phones use other push services inside the firewall.
Incorrect. Until Android 7.0, apps could run in background and open their own sockets for background notifications.
> None of those existed on the G1 and are simply sensor fusion implementations on the open sensor APIs.
Incorrect – the open sensor APIs are only available for foreground apps. You can not collect any stepcounter data unless your app is constantly showing a notification in foreground, or is using the Google Fit APIs.
Not on any devices, you’ll need to load bindings through Google Play Services.
> You need to understand the difference between the platform and the services that Google provides on top of it.
I seriously suggest you actually go and try to build apps for non-Google Play devices at least a single fricken time, or try to build ROMs, before you comment. You’re just making a fool out of yourself.
Now you are confusing what the platform allows you to do (which has decreased to help battery life) with what the open source platform has implemented for you (which has increased drastically). Every single statement in your post is an example of that. For example, push services, which were never open source, can still be implemented by third parties as a system app. This has always been the case.
> I seriously suggest you actually go and try to build apps for non-Google Play devices at least a single fricken time, or try to build ROMs, before you comment.
I've built apps for the Amazon App Store and built AOSP from source multiple times. That's not the issue here. The issue is that you were confusing the fact that more of the things on Pixel devices are not open source (true, but Pixel doesn't claim to be an AOSP device) with fewer things being available in open source (which is false) and are now confusing fewer things being allowed to third party apps (true) with fewer things being available in open source (still false).
Since the G1, the following parts are just some of the many that were removed from the open project and replaced with proprietary ones:
Launcher, Dialer (the actual phone app), Contacts, Calendar, Email, on-device Search (last open in 2.3.7), and many more.
Everything that the user touches or sees is closed source.