The Internet Printing Protocol, or IPP, was initially supported in Android with Android Oreo. Developed by Mopria in a partnership with Google, it's designed to make printing as easy and universal as possible. It allows the device to send multiple print jobs, query the status of the printer and more. IPP can also run over the internet, meaning some printers supporting IPP will allow you to print on your printer at home even when you aren't around.

However, IPP is implemented using the HTTP standard, including all of its streaming and security features. As we all know, HTTP isn't very secure and can be intercepted easily, and therefore so can IPP. If you want to print to your printer when at home or when away, you should use IPPS and not IPP. IPPS is implemented through HTTPS, meaning a secure connection.

The problem is Android Oreo does not support IPPS, or at least not yet. When connecting to an IPPS only printer on Android Oreo, it simply won't work. It can't discover them and it can't connect to them, leaving the implementation of IPP rather useless if you're worried about the privacy of your data. Thankfully, a set of commits have appeared in the Android Gerrit from the Mopria developers, which claim to add support for IPPS. They are marked as merged, meaning the next iterative release of Android (maybe Android 8.1) should come with support for the much more secure IPPS.

It's great to see the unification of device and printer, as years ago setting up a printer was an awful experience, regardless of if it was a phone or computer. IPP has unified devices in a way that wasn't possible 5 to 10 years ago, and it's great to see that we will be receiving support for the much more secure IPPS in the potentially near future.