In its latest revision of the Android Compatibility Definition Document, Google has laid down some rather interesting rules not related to Android itself, but rather common device hardware. In the CDD, a new section has appeared that specifically relates to the USB Type C standard and charging - a subject that has become increasingly thorny with the proliferation of numerous proprietary fast charging standards.
While the section for now is labeled as "STRONGLY RECOMMENDED," Google is signaling clearly that it could become mandatory: "in future Android versions we might REQUIRE all type-C devices to support full interoperability with standard type-C chargers."
The section essentially boils down to this. If you're messing with Vbus voltages in a way that is out of spec, or alter sink / source roles of pins in order to use your proprietary charging method (see: Qualcomm Quick Charge), Google says, well: Don't do that. The language stating that this section could soon become mandatory is clearly meant to send a message to manufacturers and chipset vendors alike to get in line with USB Power Delivery or risk having their product roadmap disrupted by the CDD.
Type-C devices are STRONGLY RECOMMENDED to not support proprietary charging methods that modify Vbus voltage beyond default levels, or alter sink/source roles as such may result in interoperability issues with the chargers or devices that support the standard USB Power Delivery methods. While this is called out as "STRONGLY RECOMMENDED", in future Android versions we might REQUIRE all type-C devices to support full interoperability with standard type-C chargers
Google's CDD is no stranger to hardware requirements, but this one is rather specifically meant to push the adoption of a standard in the device ecosystem rather than simply ensure the interoperability of Android features. Because, frankly, charging your phone really doesn't have anything to do with an operating system.
One final piece of the section specifically does make a requirement of Type C devices: Google has now declared they must detect 1.5A and 3.0A chargers that are part of the Type C resistor standard, and that the device must be able to detect changes in the advertisement (how much power the charger can send). It's not clear how much of a problem this is specifically.
But this whole section is interesting, and I would not be surprised if we see further requirements enumerated around USB and charging in future versions of the document.