Raskere innlogginger med passord automatisk fyll i iOS 11

Hva du skal skape

Passord AutoFyll i iOS 11

Logg inn er det første trinnet en bruker må ta når de starter med en app som krever en konto. Dette tar vanligvis flere sekunder hvis brukeren husker sine legitimasjonsbeskrivelser og kan skrive dem med en gang. Andre brukere, i stedet, må kanskje bytte til deres foretrukne passordbehandlingstjeneste (iCloud nøkkelring, 1Password, LastPass, etc.) for å kopiere brukernavn og passord. Det er unødvendig å si at denne interaksjonen senker brukere, og noen av dem vil bare slippe ut av prosessen.

Det har vært noen forsøk på å forbedre denne erfaringen. 1Password, for eksempel, tilbyr en fin utvidelse som apputviklere kan dra nytte av. En annen løsning som allerede er inkludert i iOS siden WWDC 2014, er Safari Shared Credentials. 

I IOS 11 har Apple imidlertid innført en enda mer sømløs måte å strømlinjeforme påloggingsprosessen: Den nye Passord AutoFill API. Sammenlignet med de tidligere løsningene, er det enklere for brukerne å bruke, og raskere for utviklere å implementere.

I dette innlegget lærer du hvordan du øker innloggingsprosessen og forbedrer brukerens oppbevaring med Password AutoFill, en ny API introdusert i IOS 11.

Introduksjon

Passord AutoFill gjør at brukerne kan fylle inn påloggingsinformasjonen direkte i appen din ved å samhandle med QuickType-linjen som vises over tastaturet. Forbedre innloggingsflyten vil øke brukerens oppbevaring og appens omdømme. Etter denne opplæringen vil du kunne forkorte innloggingstrømmen til bare noen få sekunder. 

Det er to trinn for å implementere passordautomatikk i appen din:

  • Vis QuickType-linjen med nøkkelikonet og la brukerne manuelt velge riktig innlogging.
  • Koble sammen din app og nettside på en sikker måte, slik at QuickType-linjen kan foreslå riktig innlogging til brukeren for å fremskynde prosessen enda mer.

QuickType-linjen

Det første trinnet er å få QuickType-linjen til å vises med tastetasten. Etter dette trinnet kan brukerne trykke på det og manuelt velge riktig innlogging fra den presenterte visningskontrollen. Den eneste egenskapen som kreves for å vise QuickType-linjen, er å stille inn textcontent eiendom i din UITextField eller UITextView gjenstand. Hvis du har en tilpasset kontroll som samsvarer med , samme kode vil gjelde.

Du bør legge til denne egenskapen til e-post / brukernavn og passordfelt. En vanlig implementering vil være følgende:

usernameTextField.textContentType = .username passwordTextField.textContentType = .password

IOS vil vise QuickType-linjen på alle enheter som kjører iOS 11 når minst ett passord er lagret i nøkkelringen. Hvis du prøver på simulatoren, og du ikke ser QuickType-linjen som vises, er det sannsynligvis fordi nøkkelringen din er tom.

Etter at brukeren trykker på tastikonet og godkjennes via berørings-ID, vises en liste over alle lagrede passord. Brukeren kan søke eller bla gjennom, og når de riktige legitimasjonene blir funnet, blir det enkelt å trykke på innloggingsfeltene.

Som du kan se, er den langsommere delen i denne prosessen å finne riktig innlogging i nøkkelringen. I neste avsnitt ser vi hvordan vi kan fjerne dette trinnet og forbedre opplevelsen enda mer.

Referanser forslag

Du kan også fortelle iOS nettstedet hvor appen din er tilknyttet. Hvis nøkkelringen inneholder legitimasjon lagret fra Safari på iOS eller macOS, vil disse legitimasjonene bli foreslått - eliminere bryet med å søke dem manuelt i nøkkelringen.

Hvis du allerede bruker Universal Linker, bør appen din vise legitimasjonene for nettstedet ditt i QuickType-feltet. IOS vet hvilket nettsted som er tilknyttet appen din, så det er 100% klar til å foreslå legitimasjonsbeskrivelser.

En annen måte å sterkt knytte appen din og nettstedet sammen, uten å ha universelle koblinger, er en web-ID-tilknyttet domenetjeneste. 

Bytt til Xcode prosjektinnstillinger, gå til Capabilities og slå på Tilknyttede domener. Legg til nettadressen din her. La oss si at ditt nettsted domenenavn er amazingwebsite.com: Det oppførte domenenavnet skal være webcredentials: amazingwebsite.com.

Det er det for konfigurasjonen i Xcode-prosjektet. IOS kjenner nå appens tilhørende nettsted. Det siste trinnet er å laste opp en fil til serveren din, slik at iOS kan bekrefte at du eier nettstedet du prøver å knytte til appen. (Dette er for å hindre at ondsinnede apper stjeler legitimasjon fra andre nettsteder.)

Opprett en ny tekstfil (utenfor Xcode-prosjektet hvis du foretrekker) eple-app-site-forening. Dette er et standardnavn som iOS ser etter på serveren din ved hjelp av en sikker tilkobling (du må ha SSL-konfigurasjon på serveren din). Innholdet i filen er også ganske standard. Bare kopier og lim inn følgende kode.

"webcredentials": "apps": ["1EMDW8DVTP.com.patrickbalestra.AutoFill"]

Du bør endre strengen i apps array for å være ditt lag ID (som finnes i utviklerportalen under medlemskapsdelen), etterfulgt av en periode og appens buntidentifikator. Opprett en mappe som heter .Velkjente i rotkatalogen på serveren din og last opp filen til den.

For å sikre at alt gikk som forventet, sjekk inn en nettleser hvis filen eksisterer på den angitte adressen. Dette er adressen min for eksempel: https://patrickbalestra.com/.well-known/apple-app-site-association. 

Hvis du ser JSON-filen riktig, som i bildet nedenfor, er du helt klar.

Start appen og legg merke til at QuickType-linjen foreslår nettstedets legitimasjon, slik at du kan logge inn med et enkelt trykk.

Hvis du vil lære mer om Password AutoFill, kan du sjekke ut sesjon 206 på WWDC 2017.

Konklusjon

Som vi nettopp har sett, er det veldig enkelt å implementere Password AutoFill. Du bør vurdere å ta noen minutter å implementere det for å gjøre det enklere for brukerne og bedriften din. Det vil øke påloggingsprosessen og forbedre appens oppbevaring.

Hold deg oppdatert for nye opplæringsprogrammer som dekker de nye iOS 11-APIene, og i mellomtiden kan du sjekke ut noen av våre andre innlegg på IOS app utvikling.