Historien om utskrift på Android och hur Mopria Alliance gjorde det bättre

Att skriva ut dokument från Android-enheter har inte alltid varit en tårta, men det har kommit långt. Det är till stor del tack vare Mopria Alliance, som arbetade med Google för att implementera kärnutskriftstekniker i Android 8.0 Oreo.

Innan debuten av Android 8.0 Oreos Default Print Service var det lättare sagt än gjort att skriva ut dokument på Android. Googles mobila operativsystem fick inte inbyggt skrivarstöd förrän Android 4.4 KitKat, och med undantag av tredjepartslösningar från sådana som Samsung, att installera en skrivare krävde leverantörsspecifika plugins och förare. Men tack vare Mopria Alliance, ett konsortium av smartphone- och skrivartillverkare, har Androids kompatibilitet med skrivare förbättrats med stormsteg. Android Oreo stöder häpnadsväckande 97 procent av skrivarna på marknaden – över 100 miljoner – plus funktioner som dubbelsidig utskrift, Wi-Fi Direct-utskrift, orientering och pappersstorleksjustering.

Men vad har Mopria Alliance med mobil utskrift att göra, och vad väntar framtida versioner av Android? Här är en kort historik över Android-utskriftsramverket och en förhandsvisning av förbättringar i pipeline.

Utskrift på Android med Android 4.4 KitKat

Android KitKat utskriftsmeny.

Tidiga versioner av Android stödde inte utskrift. För att skriva ut ett dokument, en bild eller något annat från en Android-smarttelefon eller surfplatta före KitKat krävdes nedladdning av ett verktyg från tredje part som t.ex. Google Cloud Print, dra upp dokumentet i en annan app och använd Androids Dela-meny för att skicka det till det tidigare nämnda verktyget. Det behöver inte sägas att det inte var en elegant lösning – särskilt jämfört med Apples AirPrint och andra kommande konkurrenter.

Androids skrivartjänst behövde en makeover, och Google tog sig an det 2013. Android 4.4 KitKat markerade debuten av API: er för att hantera skrivare och en inbyggd Android-utskriftsplattform. Det begynnande Android Print Framework hade ett användargränssnitt med rullgardinsmenyer för skrivare och sidval, och en utskriftshanterare som skickade utskriftsförfrågningar från appar till tillgängliga skrivartjänster.

Skrivartillverkarna var naturligtvis inte begränsade till den nya utskriftshanteraren. De kunde använda API: erna för att utveckla sina egna utskriftstjänster och distribuera dem via Google Play, och många gjorde det, inklusive HP, Canon, Epson och Brother. Apputvecklare hade under tiden friheten att lägga till utskriftsåtgärder i appar eller implementera de nya utskrifts-API: erna för att skapa, avbryta och kontrollera status för pågående utskriftsjobb.

Så här fungerade Androids utskriftsstack då (och hur det fortfarande fungerar idag, till stor del): När en användare avfyrade en utskrift jobb från en app gjorde appen API-anrop till Android Print Framework, som i sin tur gjorde anrop till en utskrift service. (Ett av dessa API-anrop var till Googles PDF-renderare, som genererade en sidnumrerad PDF-version av filen till skrivas ut.) Utskriftstjänsten genomförde sedan ett handslag med skrivaren, vilket påbörjade utskriftsprocessen.

Tyvärr var KitKats nya utskriftsplattform själva definitionen av nakna ben. Android 5.0 Lollipop förbättrats med en materialdesign-inspirerad meny med förhandsgranskning och rullgardinsval för pappersstorlek, färg, orientering och sidintervall. Och Android 7.0 Nougat förde med sig nya API-anrop som visade statusen för utskriftsjobb, vilket gjorde det möjligt för appar att visa indikatorer för utskriftsförlopp. (I tidigare versioner av Android var det inte direkt uppenbart.) Men Androids utskriftsstack kom inte till sin rätt förrän Oreo.

Förbättringar i utskrift på Android 8.0 Oreo tack vare Mopria Alliance

De Mopria Alliance, ett globalt icke-vinstdrivande organ för standarder för mobila utskrifter, kanske inte har mycket i vägen för varumärkeskännedom, men det är knappast den nya ungen på blocket. Under de fem år som gått sedan grundandet har det rekryterat tungviktare för skrivare och produktivitet inklusive Adobe, Konica Minolta, Qualcomm, Lexmark, Kyocera, Dell och Toshiba, som alla har förbundit sig att stödja grundläggande utskriftstekniker, funktioner och tjänster över mobila enheter.

Brent Richtsmeier, ordförande för Mopria Alliance Steering Committee, berättade XDA-utvecklare att Moprias teknologi är installerad på över 750 miljoner enheter olika mobila enheter, och att den levererar 1,4 miljoner sidor till skrivare varje dag. "När världen blir mer uppkopplad [...] är det väldigt tydligt att allt är sammankopplat och mer mobilt, men folk behöver fortfarande skriva ut", sa Richtsmeier.

För det ändamålet slog Mopria sig ihop med Android OEMs som t.ex Samsung—en grundare av Mopria Alliance—ZTE, Huawei, och Amazon att skicka surfplattor och smartphones med Mopria Print Library (MLP), Moprias svit av utvecklarverktyg. En frukt av dess arbete är Samsung Print Service, ett mobilt utskriftsverktyg för Android Print Framework som kommer förinstallerat på Samsung Galaxy s4, S5, S6, S7, S8, och S9. (Mr Richtsmeier säger att den har cirka 400 miljoner aktiva användare varje månad.) En annan är ZTE: s Axon 7 och Axon 7 Max, som levererades i Kina förladdad med Mopria Print Service.

Samtidigt inledde Mopria ett samarbete med Google att slå samman dess teknologier med Android Open Source Project (AOSP) kodbas. Under åren efter lanseringen av KitKat bidrog den med tusentals rader kod som kulminerade i Android Oreos nya och förbättrade standardutskriftstjänst.

Standardutskriftstjänsten i Android 8.0 Oreo stöder standardutskriftsinställningar som färgjustering, val av mediatyp och kopiering. Det är gratis och lätt att använda, men hindrar inte heller utvecklare från att skapa sina egna Mopria-certifierade produkter.

Att gå den anpassade vägen är relativt lätt, enligt herr Richtsmeier. Att gå med i Mopria Alliance är det första steget – en liten licensavgift är inblandad. Sedan har utvecklare ett par alternativ: (1) Kompilera Mopria-biblioteket med sin egen kod, (2) använd kodbasen som Mopria licensierar alla medlemmar i Mopria Alliance, eller (3) använder Moprias befintliga AOSP-kod för att skriva en anpassad lösning.

När koden är på plats, nästa kommer testningen. Mopria Alliance-medlemmar har tillgång till verktygsuppsättningar för efterlevnadstestning, inklusive automatiserade enhetsspecifika och skrivartester. När de nödvändiga testerna har körts och data samlats in måste resultaten skickas till en Mopria ingenjör, som granskar dem för att säkerställa att koden beter sig som förväntat och kontrollerar allt som behövs lådor. Om allt går bra anses appen vara Mopria-certifierad.

Framtiden för utskrift på Android

Androids utskriftsplattform har kommit långt sedan eran före KitKat, då otäcka lösningar (vanligtvis involverar Dela-menyn) var det enda sättet att skriva ut något – kort att överföra filer till en skrivaransluten PC, av kurs.

Som sagt, Android Oreos standardutskriftstjänst saknar påfallande företagsfunktioner som hålslagning, vikning, häftning, PIN-autentisering eller redovisningsfunktioner. Det stöder inte heller "dela för att skriva ut" – det finns inget enkelt sätt att skriva ut något från Androids Dela-meny. (Herr Richtsmeier skyller på det senare problemet med en bugg i Androids WebView-klass för ett år sedan, vilket försenade implementeringen.)

Funktionsskillnad mellan Android Oreos Default Print Service och Mopria-appen. Källa: Mopria.

Tredjepartsutskriftstjänster såsom Moprias egen fristående Mopria Print Service, som är tillgänglig gratis från Google Play Butik, hjälper till att fylla funktionalitetsluckan och lägger till funktioner som val av inmatningsfack, Bluetooth-utskrift, ad hoc Wi-Fi-utskrift och direkt USB-OTG-utskrift. Men det är inte mycket tröst för användare i länder med ojämn internetinfrastruktur, eller där Google Play Butik inte är tillgänglig.

Mopria Print ServiceUtvecklare: Mopria Alliance

Pris: Gratis.

4.5.

Ladda ner

Tecken på förbättring är vid horisonten, tack och lov, som Android P kommer att överbrygga funktionsgapet något.

Flera åtaganden i Android Gerrit lämnade in sent förra året av Mopria-utvecklare pekar på stöd för IPPS-skrivare. IPPS är en HTTPS-baserad säker implementering av IPP (Internet Printing Protocol) som gör att appar kan skicka utskriftsjobb, fråga status för utskriftsjobb och mer med internetanslutna skrivare.

Och i januari började Mopria-utvecklare lägga grunden för ännu en trevlig att ha: Wi-Fi Direct-utskrift. För närvarande stöder standardutskriftstjänsten på Android endast lokala trådlösa infrastrukturanslutningar via en router eller hotspot, men nya åtaganden lägg till stöd för anslutningar direkt mellan Android-smarttelefoner och surfplattor och Wi-Fi Direct-kompatibla skrivare. Med Wi-Fi Direct krävs ingen ihopkoppling, och till skillnad från Wi-Fi-hotspots kräver vissa skrivare inte ens ett lösenord.

Herr Richtsmeier sa att Mopria-utvecklare också har tillhandahållit kod för att manuellt lägga till skrivare.

"Det har gjorts studier som visar att åttio procent av millennials, som utgör majoriteten av arbetsstyrkan, gör sina jobb med mobil teknik, men att endast 33 procent av dem säger att den mobila tekniken uppfyller deras behov," sa Richtsmeier, "och utskrift är något som folk ser på som en nyckelsak som händer i kontor. Mopria försöker fylla den luckan [och] möta [dessa] behov."