Le notifiche sugli smartwatch utilizzano le stesse API e hanno la stessa struttura delle notifiche sugli smartphone.
Le notifiche possono essere visualizzate su uno smartwatch in due modi:
- Un'app mobile crea una notifica e il sistema esegue automaticamente il collegamento notifica sullo smartwatch.
- Un'app indossabile crea una notifica.
In entrambi gli scenari, utilizza
NotificationCompat.Builder
per creare le notifiche. Quando crei notifiche con la classe Builder, il sistema
si occupa di visualizzare correttamente le notifiche. Ad esempio, quando invii una notifica da
nell'app mobile, ogni notifica viene visualizzata come una scheda nello stream di notifiche.
Esamina l'esempio che segue per scoprire come vengono visualizzate le notifiche.
Utilizza uno dei seguenti
NotificationCompat.Style
per ottenere i risultati migliori.
Nota:
In uso: RemoteViews
rimuove le notifiche di layout personalizzati e il dispositivo indossabile mostra solo il testo e le icone.
Notifiche consigliate per gli indossabili
Utilizza le notifiche espandibili come punto di partenza per tutte le notifiche, poiché sono un ottimo modo per coinvolgere gli utenti di dispositivi indossabili. Lo stato compresso viene visualizzato nella notifica per un'esperienza breve e immediata. Se l'utente la tocca, la notifica si espande. rivelando un'esperienza immersiva e scorrevole di contenuti e azioni aggiuntivi.
Puoi creare una notifica espandibile
come faresti con un dispositivo mobile, utilizzando una delle NotificationCompat.Style
le sottoclassi del deployment. Ad esempio, una notifica standard che utilizza
NotificationCompat.MessagingStyle
ha il seguente aspetto:
Puoi vedere che la notifica include azioni impilate in fondo nello stato espanso.
Per esempi di
NotificationCompat.BigPictureStyle
,
NotificationCompat.BigTextStyle
,
NotificationCompat.InboxStyle
,
e NotificationCompat.MessagingStyle
,
controlla gli esempi di notifiche
su GitHub.
Suggerimento:se le notifiche includono una "risposta" un'azione, ad esempio per un messaggio
puoi migliorare il comportamento della notifica. Ad esempio, puoi attivare l'input vocale
risponde direttamente dall'accessorio indossabile o tramite risposte testuali predefinite con
setChoices()
.
Per ulteriori informazioni, consulta
Aggiungi il pulsante Rispondi.
Evita notifiche duplicate
Per impostazione predefinita, le notifiche vengono collegate da un'app per smartphone associata a qualsiasi smartwatch accoppiato. Si tratta di un è un'ottima opzione se non hai installato un'app indossabile.
Tuttavia, se crei un'app dell'orologio indipendente e un'app per smartphone complementare, le app creano notifiche duplicate.
Wear OS offre un modo per interrompere le notifiche duplicate con le API Bridging. Questo è particolarmente importante per le app su dispositivi con Wear OS 5 o versioni successive, perché alcune le notifiche ignorabili su un dispositivo mobile non possono essere ignorate sul dispositivo Wear OS. Per ulteriori informazioni, consulta Opzioni di collegamento per le notifiche.
Aggiungere funzionalità specifiche per indossabili a una notifica
Se devi aggiungere a una notifica funzionalità specifiche per indossabili, ad esempio nascondere
l'icona di un'app dalla notifica indossabile o che consente agli utenti di dettare una risposta di testo
con l'input vocale, puoi utilizzare
NotificationCompat.WearableExtender
classe per specificare le opzioni.
Per utilizzare questa API:
-
Crea un'istanza di un
WearableExtender
, che imposta le opzioni specifiche per gli indossabili per notifica. -
Crea un'istanza di
NotificationCompat.Builder
, impostando le proprietà desiderate per la notifica come descritto in precedenza in questa guida. -
Chiama
extend()
sulla notifica e passareWearableExtender
. In questo modo vengono applicate le opzioni indossabili alla notifica. -
Chiama
build()
per creare la notifica.
Nota:
Se utilizzi NotificationManager
del framework,
alcune funzionalità
NotificationCompat.WearableExtender
non funziona, quindi assicurati di utilizzare
NotificationCompat
.
Puoi sincronizzare la chiusura o l'annullamento delle notifiche su tutti i dispositivi dell'utente. A
sincronizzare una chiusura, utilizza
setDismissalId()
. Per ogni notifica, passa un token univoco globale
l'ID come stringa quando chiami
setDismissalId()
. Quando la notifica viene ignorata, tutte le altre
le notifiche con lo stesso ID chiusura vengono ignorate sullo smartwatch e
uno smartphone accoppiato. Per recuperare un ID chiusura, utilizza
getDismissalId()
.
Specifica azioni solo indossabili
Se vuoi che siano disponibili azioni diverse sull'orologio e sullo smartphone, usa
WearableExtender.addAction()
. Dopo aver aggiunto un'azione con questo metodo,
l'indossabile non mostra altre azioni aggiunte
NotificationCompat.Builder.addAction()
. Le azioni aggiunte con
I WearableExtender.addAction()
vengono visualizzati solo sull'indossabile, non
sul telefono.