[UPDATE: a Google Play Services update after I posted this broke the feature again. (An API incompatibility between the System Update code and the Checkin code, if you're interested in the details: bugs involving two separate moving parts are often the sneakiest.) This was fixed again internally, but late enough that it will be next year before this works again for non-Googlers. Sorry about that. We will also be improving the testing process that allowed this incompatibility to slip through.]

One thing I haven't seen the tech press notice is that the button in Settings to check for an update actually works now. If you're running the latest Google Play Services, you shouldn't need to sideload an OTA or flash a system image just because you're impatient...

How does this interact with the Google's staged rollout of new OS releases, you ask? When a device checks in because you've specifically asked it to, we flag that this is user-initiated and so you're not subject to the usual limitations. So even if we're at 1% rollout and 1% of users already have the update, if you manually check you'll still be offered it, even though a background check at the same time wouldn't.

How does this interact with your carrier's additional restrictions? (This was a question that came up a lot in the comments.) If your carrier hasn't approved the update, their restrictions will still apply if you're on their network.

Is this only for Nexus/Pixel devices? Not exactly: it's for any device that uses Google's OTA system, and that does include some non-Nexus/Pixel devices. But, yes, this won't help you if your OEM doesn't use Google's OTA system. (But there's no reason why they shouldn't do the same in theirs, and they may already do so for all I know.)

Is this only for Oreo? No, this is a Google Play Services change. There was no platform-side component to this. (The AOSP Settings app basically sends out an intent when you go into the system update section, and if you're using Google's OTA system, Google Play Services steps up and shows its UI. In some cases it will call back into the system -- to actually apply an update, for example -- but the actual checking in with the Google OTA servers is done by Google Play Services code.)

Shared publiclyView activity