Feedback aptico in iOS 10

Il feedback aptico aggiunge una nuova dimensione all'interazione dell'utente mobile. Scopri come utilizzare le nuove API di feedback aptico di iPhone 7 per fornire agli utenti una risposta tattile.

Che cos'è il feedback tattile?

In iOS 10 abbiamo una nuova API per fornire feedback all'utente. Il feedback aptico è un'estensione del feedback visivo a cui ogni utente è già abituato. Se hai un iPhone 7 o iPhone 7 Plus, potresti aver notato una piccola vibrazione del dispositivo durante lo scorrimento di un selettore di date o quando si modifica il valore di un interruttore, ovvero il feedback tattile. Il nuovo UIFeedbackGenerator la classe può essere utilizzata per implementare lo stesso comportamento nelle tue app.

Quando usarlo

La prima regola del feedback aptico dalle linee guida per l'interfaccia umana iOS: non abusarne! Non dovresti inviare un feedback inutile ai tuoi utenti. Se lo fai, potrebbe decidere di disattivare questa funzione per l'intero dispositivo. Poiché può essere disattivato, non utilizzare il feedback tattile come unico metodo di feedback con il tuo utente. Potrebbe non essere disponibile su alcuni dispositivi e le richieste verranno ignorate automaticamente su dispositivi meno recenti che non la supportano.

In generale, il feedback tattile dovrebbe essere una risposta a un'azione avviata dall'utente. In questo modo, è più facile per gli utenti correlare il feedback con la sua fonte.

Infine, se vuoi suonare un suono allo stesso tempo, dovresti fare attenzione a sincronizzarlo.

Come scegliere il giusto feedback

Le novità di Apple nel documento iOS 10 specificano che deve essere utilizzata una delle seguenti tre classi concrete:

  • UIImpactFeedbackGenerator fornisce una metafora fisica che integra l'esperienza visiva. Ad esempio, l'utente potrebbe sentire un tonfo quando una vista scorre in posizione o due oggetti si scontrano. Ha tre varianti: successo, avvertimento, e fallimento.
  • UINotificationFeedbackGenerator indica che un'attività o un'azione, come il deposito di un assegno o lo sblocco di un veicolo, ha completato, fallito o generato un avvertimento. Ha tre varianti: luce, medio, e pesante.
  • UISelectionFeedbackGenerator indica che la selezione sta cambiando attivamente. Ad esempio, l'utente avverte leggeri colpi mentre fa scorrere un selettore. Questo feedback è inteso per comunicare il movimento attraverso una serie di valori discreti, non facendo o confermando una selezione.

Per spiegare questi diversi tipi, la documentazione contiene video con audio per illustrare il modello di ciascun tipo di feedback. Provali tu stesso sul sito degli sviluppatori Apple.

Come eseguire il feedback

Ora iniziamo la codifica! Stiamo costruendo un'app per iOS molto semplice che fornisce un riscontro positivo quando viene premuto un pulsante. Apri Xcode 8 e crea un nuovo progetto iOS.

Aggiungi un pulsante nel tuo storyboard file e creare un IBAction per attivare il feedback. 

 Un ciclo di vita del generatore di feedback si presenta così:

  1. Istanzia il generatore.
  2. Preparare il generatore (opzionale).
  3. Feedback di trigger.
  4. Rilascia il generatore (opzionale).

Ti guiderò attraverso ciascuno di questi passaggi di seguito.

Istanzia il generatore

Innanzitutto, dichiara una nuova variabile di tipo UINotificationFeedbackGenerator. Se desideri utilizzare un altro tipo di feedback, modifica questa classe.

var feedbackGenerator: UINotificationFeedbackGenerator? // Dichiara il tipo di generatore.

Inizializza il generatore viewDidLoad:

override func viewDidLoad () super.viewDidLoad () feedbackGenerator = UINotificationFeedbackGenerator () // Istanzia il generatore. 

Prepara il generatore

Se sai in anticipo che l'utente attiverà un feedback, dovresti chiamare il preparare() metodo. Ciò ridurrà la latenza tra la chiamata al metodo e il feedback hardware effettivo. Un esempio è quando vuoi dare più feedback durante un gesto. In questo caso, preparare prima il generatore in modo che la latenza venga ridotta.

Trigger Feedback

Nell'esempio che stiamo costruendo, non abbiamo modo di sapere quando l'utente preme il pulsante. Per questo motivo, all'interno dell'azione, attiviamo immediatamente il feedback.

@IBAction func triggerNotification (_ sender: UIButton) feedbackGenerator? .NotificationOccurred (.success) // Attiva il feedback aptico. 

Rilascia il generatore

Abbiamo dichiarato il generatore come facoltativo in modo che, nel caso in cui non ne abbiamo più bisogno, possiamo impostarlo come zero per rilasciare tutte le sue risorse. Questo è un passaggio facoltativo. 

Al momento non esiste alcun modo per testare il feedback aptico in Simulatore. Dovresti mettere le mani su un iPhone 7 e testare il flusso dell'app con il nuovo sistema di feedback in azione. Esegui l'app sul tuo iPhone 7 e premi il pulsante sullo schermo. Dovresti sentire un riscontro positivo! 

Quando aggiungi il supporto del feedback alla tua app, assicurati che sia nel contesto giusto che i tuoi utenti si aspetterebbero, altrimenti potrebbero essere confusi.

Conclusione

Il feedback aptico è una nuova grande funzionalità per rendere la tua app più realistica. Gli utenti apprezzano sempre che la tua app supporta le ultime funzionalità del loro dispositivo, quindi vai avanti e implementala subito.

Nel frattempo, dai uno sguardo ad alcuni dei nostri altri corsi e tutorial sullo sviluppo di app Swift e sulle nuove funzionalità di iOS 10.

  • Aggiorna la tua app a iOS 10

    In questo articolo, ti mostrerò cosa devi fare per preparare le tue app per iOS 10. Come per tutte le principali versioni, iOS 10 introduce una serie di modifiche e ...
    Bart Jacobs
    iOS
  • iOS 10: creazione di interfacce di notifica personalizzate

    In questo tutorial imparerai come utilizzare il nuovo framework UserNotificationsUI in iOS 10 per creare interfacce personalizzate per la tua app locale e push ...
    Davis Allie
    SDK iOS
  • I dati principali sono appena diventati migliori

    Durante il WWDC di quest'anno, Apple ha introdotto una serie di miglioramenti significativi ai Core Data, portando il framework al livello successivo. In questo articolo, io ...
    Bart Jacobs
    Dati principali
  • Crea app per iOS con Swift 3

    iOS 10 è appena stato rilasciato e con esso Swift 3. Swift è un nuovo linguaggio di programmazione di Apple, progettato specificamente per la creazione di iOS, macOS e ...
    Markus Mühlberger
    veloce