Wat een invoermethode werkelijk is
Elk Android-toetsenbord kan lezen wat je typt. Niet door een fout, maar omdat dat is wat een invoermethode is: het systeem geeft je aanslagen door zodat het tekens op het scherm kan zetten, typefouten kan rechtzetten en het volgende woord kan voorstellen.
Dat geldt ook voor het onze. LocalType leest de woorden rond je cursor, om precies die redenen. Elke pagina die je vertelt dat er een toetsenbord bestaat dat je tekst niet kan zien, beschrijft iets dat niet zou werken.
De bruikbare vraag is dus nooit of het je typen kan zien. Hij is wat het doet met wat het ziet, en wat het überhaupt zou kunnen doen. Die tweede helft kun je zelf vaststellen, en dat kost je minder tijd dan het lezen van één privacyverklaring.
Drie controles van vijf minuten
Kijk naar de rechten. Zoek het toetsenbord op bij de app-instellingen van Android, en kijk wat het gekregen heeft en of het überhaupt om internettoegang gevraagd heeft. Ontbreekt dat recht, dan kan er niets weg, ook niet als iemand dat later alsnog zou willen.
Zet het netwerk uit en gebruik het. Tik een dag in vliegtuigstand, spreek iets in, wissel van taal, gebruik de emojikiezer. Alles wat ophoudt te werken ging ergens naartoe. Alles wat blijft werken hoefde dat nooit. Loop daarbij ook langs de vertaalknop, de zoekfunctie in de emojikiezer en de gifs, want daar zit bij de meeste toetsenborden een verbinding achter.
Kijk wat er gebeurt op een nieuwe telefoon. Verschijnen je geleerde woorden, je instellingen en je woordenboek terug zonder dat je iets doet, dan stonden ze ergens anders dan op je oude telefoon. Begin je met niets, dan stonden ze dat niet. Je kunt die derde ook uitlokken zonder nieuwe telefoon: verwijder de app, installeer hem opnieuw, en kijk wat er vanzelf terugkomt.
De punten die de uitkomst bepalen
Heeft het überhaupt een netwerk nodig? Dit is het sterkste signaal dat je hebt, want het is zwart-wit en na te kijken. Een toetsenbord dat nooit contact legt, kan je typen nergens naartoe sturen, wat er in het beleid ook staat. Sommige toetsenborden willen een verbinding voor oprecht nuttige dingen: vertalen, een klembord in de cloud, je geleerde woordenboek over meerdere telefoons gelijkhouden. Gemak met een prijs, en die prijs is dat er tekst van je telefoon af gaat.
Blijft je geleerde woordenboek lokaal of gaat het mee? Autocorrectie wordt beter door jouw woorden te onthouden. Waar dat geheugen woont doet ertoe: op je telefoon, of in een account dat je naar een nieuwe telefoon volgt. Wie het mee laat reizen krijgt zijn vaktaal cadeau op elke nieuwe telefoon, en zet diezelfde lijst tegelijk ergens anders neer.
Blijft het buiten de back-up? Android kan gegevens van apps vanzelf naar de cloud kopiëren. Voor de meeste apps is dat handig. Voor een app die alles bevat wat je ooit getikt hebt, is het twijfelachtig. Een app kan zich daarvoor afmelden, en of hij dat doet is een bewuste keuze van wie hem gebouwd heeft.
Wat gebeurt er in wachtwoordvelden? Android vertelt een toetsenbord wanneer een veld een wachtwoord is. Een zorgvuldig toetsenbord gedraagt zich daar anders, en op zijn minst door niet te leren van wat je daar tikt en geen spraakinvoer aan te bieden.
En het klembord? Dit punt wordt bij privacyvergelijkingen bijna altijd overgeslagen. Een toetsenbord biedt meestal een klembordgeschiedenis, wat handig is en tegelijk betekent dat er ergens een lijst wordt bijgehouden van de laatste dingen die je gekopieerd hebt: een rekeningnummer, een eenmalige code uit een sms, een adres, een wachtwoord dat je uit een kluis hebt geplakt. Stel daar dezelfde vragen over als over je typen. Staat die geschiedenis op je telefoon of gaat hij naar een account? Overleeft hij een herinstallatie? Kun je hem wissen, en wist wissen hem echt? Android laat sinds versie 12 een melding zien zodra een app het klembord uitleest, dus dat deel hoef je niet op goed vertrouwen aan te nemen.
De opties, en wat ze kosten
Toetsenborden die open source zijn. Projecten als AnySoftKeyboard en HeliBoard bestaan juist omdat sommige mensen de code willen lezen en geen beschrijving willen geloven. Is dat jouw eis, begin daar dan. Ze zijn gratis, en de afruil zit meestal in afwerking en in het aantal talen dat goed wordt afgehandeld.
FUTO Keyboard. Gebouwd rond hetzelfde uitgangspunt, open source, één keer betalen, met spraakinvoer als los onderdeel dat je eraan kunt hangen.
Het toetsenbord waarmee je telefoon geleverd werd. De grote toetsenborden zijn verfijnd, snel en dekken enorme aantallen talen. Heb je tot hier gelezen en zit niets je dwars, dan is er geen reden om iets te veranderen.
LocalType. Een toetsenbord met inspreken erin, waarbij de spraakherkenning op je telefoon zelf draait en niet op een server.
LocalType, punt voor punt
Netwerk. De app vraagt om internettoegang voor precies één ding, het ophalen van het spraakmodel dat je kiest, en daarna nooit meer. Typen had nooit een verbinding nodig, en zodra het model staat heeft inspreken die ook niet. Zet vliegtuigstand aan en spreek een zin in; die controle duurt tien seconden.
Je woordenboek. Woorden die je toevoegt, achternamen, vaktaal, productnamen, blijven op je telefoon. Ze maken de typesuggesties beter en gaan ook als context naar het spraakmodel, zodat die woorden goed gespeld verschijnen als je ze uitspreekt. Ze worden niet geüpload, want er is geen dienst aan de andere kant om ze naartoe te sturen.
Back-up. De gegevens van de app blijven met opzet buiten de back-up van Android. Het gevolg merk je meteen: een nieuwe telefoon begint leeg, je installeert de app opnieuw en haalt opnieuw een model op. Wil je je eigen woordenlijst terug, dan voeg je die woorden opnieuw toe.
Wachtwoordvelden. De spraakinvoer zet zichzelf daar uit, dus een wachtwoord kan niet per ongeluk ingesproken worden, en het toetsenbord leert ook niet van wat je in zo’n veld tikt.
Klembord. De gegevens van de app staan op je telefoon en blijven buiten de back-up van Android, dus hier valt het antwoord samen met dat bij je woordenboek.
Buiten die vijf: er bestaat geen account, geen aanmelding, geen profiel, niets dat het toetsenbord aan een persoon koppelt. Er zit geen reclame in het product, dus niets van wat je tikt voedt een profiel, en er draait geen tracking binnenin. Het spraakmodel staat in de eigen opslag van de app, die alleen de app kan lezen, en er wordt geen archief van je opnames bewaard, want audio wordt tekst en daarna is de audio klaar.
Privacy is hier geen versleuteling
Sluit een paar dingen eerst uit, want de term wordt losjes gebruikt.
Het betekent niet versleuteld. Je aanslagen zijn geen bericht onderweg, ze zijn invoer voor de app waarin je aan het tikken bent, en versleuteling is niet het mechanisme waar het hier om draait.
Het betekent niet anoniem. De app waarin je typt weet uitstekend wie je bent. Een toetsenbord verandert daar niets aan.
En het reikt niet voorbij het moment dat je op verzenden drukt. Zodra de woorden in een bericht, een notitie of een formulier staan, horen ze bij die app en bij de regels daarvan. Het deel van het toetsenbord eindigt zodra de tekst verschijnt, precies alsof je hem zelf had ingetikt.
Wat het wél betekent is smal en na te kijken: je typen wordt niet verzameld, je woordenboek gaat niet mee omhoog, je stem wordt niet verstuurd, en niets eraan heeft een server nodig om te werken. Wil je code die je kunt inzien, neem dan een toetsenbord dat open source is. Wil je inspreken dat je telefoon nooit verlaat, in een toetsenbord dat je toch al zou gebruiken, dan komt LocalType daarvoor in aanmerking.