Wear

Crea applicazioni per smartwatch Wear OS by Google.

Questa tabella elenca tutti gli artefatti nel gruppo androidx.wear.

Elemento Release stabile Candidato di rilascio Versione beta Versione alpha
wear 1.3.0 - - 1.4.0-alpha01
dispositivo-usura 1.1.0 - - 1.2.0-alpha02
test-usura-input 1.1.0 - - 1.2.0-alpha02
come indossabile 1.0.0 - - 1.1.0-alpha01
interazioni-smartphone-indossa 1,0,1 - - 1.1.0-alpha04
indossa-interazioni-da-remoto 1.0.0 - - 1.1.0-alpha02
Ultimo aggiornamento di questa raccolta: 10 gennaio 2024

Dichiarazione delle dipendenze

Per aggiungere una dipendenza su Wear, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Trendy

dependencies {
    implementation "androidx.wear:wear:1.3.0"

    // Add support for wearable specific inputs
    implementation "androidx.wear:wear-input:1.1.0"
    implementation "androidx.wear:wear-input-testing:1.1.0"

    // Use to implement wear ongoing activities
    implementation "androidx.wear:wear-ongoing:1.0.0"

    // Use to implement support for interactions from the Wearables to Phones
    implementation "androidx.wear:wear-phone-interactions:1.0.1"
    // Use to implement support for interactions between the Wearables and Phones
    implementation "androidx.wear:wear-remote-interactions:1.0.0"
}

Kotlin

dependencies {
    implementation("androidx.wear:wear:1.3.0")

    // Add support for wearable specific inputs
    implementation("androidx.wear:wear-input:1.1.0")
    implementation("androidx.wear:wear-input-testing:1.1.0")

    // Use to implement wear ongoing activities
    implementation("androidx.wear:wear-ongoing:1.0.0")

    // Use to implement support for interactions from the Wearables to Phones
    implementation("androidx.wear:wear-phone-interactions:1.0.1")
    // Use to implement support for interactions between the Wearables and Phones
    implementation("androidx.wear:wear-remote-interactions:1.0.0")
}

Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze delle build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Anteprima di Wear Tooling 1.0

Versione 1.0.0

29 novembre 2023

androidx.wear:wear-tooling-preview:1.0.0 viene rilasciato. La versione 1.0.0 contiene questi commit.

Funzionalità nella versione 1.0.0

  • Aggiungi WearDevices per elencare i dispositivi Wear validi che possono essere utilizzati per le anteprime dell'UI.

Versione 1.0.0-rc01

15 novembre 2023

androidx.wear:wear-tooling-preview:1.0.0-rc01 viene rilasciato senza modifiche. La versione 1.0.0-rc01 contiene questi commit.

Versione 1.0.0-beta01

18 ottobre 2023

androidx.wear:wear-tooling-preview:1.0.0-beta01 viene rilasciato senza modifiche. La versione 1.0.0-beta01 contiene questi commit.

Versione 1.0.0-alpha01

23 agosto 2023

androidx.wear:wear-tooling-preview:1.0.0-alpha01 viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Modifiche alle API

  • Aggiungi WearDevices per elencare i dispositivi Wear validi che possono essere utilizzati per le anteprime dell'interfaccia utente (Ib036e)

Wear versione 1.4

Versione 1.4.0-alpha01

15 novembre 2023

androidx.wear:wear:1.4.0-alpha01 viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.

Correzioni di bug

  • Icona ConfirmationOverlay verticalmente al centro quando non c'è nessun messaggio. (I496d8)

Wear versione 1.3

Versione 1.3.0

9 agosto 2023

androidx.wear:wear:1.3.0 viene rilasciato senza modifiche dal giorno 1.3.0-rc01. La versione 1.3.0 contiene questi commit.

Modifiche importanti dalla versione 1.2.0

  • Esegui la migrazione di AmbientModeSupport per utilizzare LifecycleObserver. Ritira AmbientModeSupport a favore delle nuove classi sensibili al ciclo di vita.
  • Aggiorna ConfirmationOverlay con nuove icone/layout, caratteri e metriche relative ai caratteri
  • SwipeDismissTransitionHelper è stato aggiornato in modo da utilizzare una risorsa disegnabile in background anziché una seconda View per correggere gli errori quando viene usato FragmentContainerView
  • Animazione SwipeDismissFrameLayout aggiornata per essere coerente con le implementazioni della piattaforma Wear e di Scrittura di Wear.
  • SwipeDismissFrameLayout correzione di bug per evitare la chiusura accidentale dei frammenti con un'accelerazione in verticale
  • ArcLayout ora supporta ponderazioni di espansione che funzionano in modo simile alle normali ponderazioni del layout.
  • Sostieni layoutDirection su ArcLayout

Versione 1.3.0-rc01

21 giu 2023

androidx.wear:wear:1.3.0-rc01 viene rilasciato senza modifiche dal giorno 1.3.0-beta01. La versione 1.3.0-rc01 contiene questi commit.

Versione 1.3.0-beta01

7 giugno 2023

androidx.wear:wear:1.3.0-beta01 viene rilasciato. La versione 1.3.0-beta01 contiene questi commit.

Modifiche alle API

  • Aggiornamento di AmbientLifecycleObserver dopo il feedback. AmbientLifecycleObserverInterface è stato rinominato in AmbientLifecycleObserver ed è possibile ottenere un'istanza chiamando AmbientLifecycleObserver(...). isAmbient è stato spostato in un campo anziché in un metodo. (I84b4f)

Correzioni di bug

  • Aggiunta di controlli null per gestire le richieste in cui la vista principale è nulla durante la reimpostazione della versione alpha e della traduzione in SwipeToDismiss. (Ib0ec7)

Versione 1.3.0-alpha05

19 aprile 2023

androidx.wear:wear:1.3.0-alpha05 viene rilasciato. La versione 1.3.0-alpha05 contiene questi commit.

Modifiche alle API

  • Esegui la migrazione di AmbientModeSupport per utilizzare LifecycleObserver. Ritira AmbientModeSupport a favore delle nuove classi sensibili al ciclo di vita. (I1593b)

Correzioni di bug

  • Aggiorna l'approccio dello sfondo dello sfondo SwipeDismissTransitionHelper per utilizzare i disegnabili anziché aggiungere una vista per correggere gli errori durante l'utilizzo di FragmentContainerView. (I851cd)

Versione 1.3.0-alpha04

25 gennaio 2023

androidx.wear:wear:1.3.0-alpha04 viene rilasciato. La versione 1.3.0-alpha04 contiene questi commit.

Correzioni di bug

  • Abbiamo aggiornato l'animazione in SwipeDismissFrameLayout per renderla coerente con le implementazioni della piattaforma Wear e di Scrittura di Wear. (I7261b)

Versione 1.3.0-alpha03

24 agosto 2022

androidx.wear:wear:1.3.0-alpha03 viene rilasciato. La versione 1.3.0-alpha03 contiene questi commit.

Nuove funzionalità

  • ArcLayout ora supporta ponderazioni di espansione che funzionano in modo simile alle normali ponderazioni del layout. Ciò significa che puoi specificare la dimensione relativa degli elementi secondari senza dover calcolare direttamente i relativi angoli. Abbiamo anche aggiunto un "best effort" MaxAngleDegrees, che viene rispettato quando si espandono gli elementi secondari con pesi. Ad esempio, potresti bloccare l'arco con diversi elementi secondari con pesi a 90 gradi, in modo da rispettare lo spazio preso da eventuali elementi non espansi.

Modifiche alle API

  • Abbiamo aggiunto una ponderazione a ArcLayout.LayoutParams che consente a un widget di espandersi per riempire lo spazio disponibile. Se è presente più di un widget, la loro quota dello spazio disponibile è proporzionale alla ponderazione. Inoltre, abbiamo aggiunto ArcLayout.setMaxAngleDegrees in modo che tu possa, ad esempio, limitare l'espansione a 90 gradi (nota che ciò non influisce sul layout dei widget secondari con dimensioni fisse). Infine, ArcLayout.Widget ora ha setSweepAngleDegrees, che consente a ArcLayout di indicare a un widget un peso diverso da zero rispetto alle sue dimensioni. (I75f24)
  • Aggiornato il valore Null of setColorFilter(I99ddf, b/236498063)

Versione 1.3.0-alpha02

23 febbraio 2022

androidx.wear:wear:1.3.0-alpha02 viene rilasciato. La versione 1.3.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Supporta layoutDirection su ArcLayout (I14d49)
  • Messaggio della descrizione dei contenuti migliorato per ConfirmationOverlay (I0fdf8)
  • Aggiorna ConfirmationOverlay con nuove icone o layout. (If5b54)

Correzioni di bug

  • Sono state aggiunte regole ProGuard per garantire che il codice relativo all'ambiente venga mantenuto (Idaa10)
  • Evita di ignorare accidentalmente i frammenti in SwipeDeployFrameLayout con un'azione verticale (Idb6d8)
  • Risolvere il problema di ConfirmationOverlay quando non è presente alcun messaggio (I63e6f)

Contributo esterno

  • Dae Gyu LEE (Samsung) - Evitare di ignorare accidentalmente i frammenti in SwipeDeployFrameLayout con un elemento verticale (Idb6d8)

Versione 1.3.0-alpha01

29 settembre 2021

androidx.wear:wear:1.3.0-alpha01 viene rilasciato. La versione 1.3.0-alpha01 contiene questi commit.

Correzioni di bug

  • ConfirmationOverlay ora sposta l'icona verso l'alto per contenere messaggi più lunghi, senza che il messaggio entri nella cornice del dispositivo (o fuori dallo schermo). (I54bff)

Wear Continuing e interazioni versione 1.1.0

VerWear-Telefono-Interazioni Versione 1.1.0-alpha04

10 gennaio 2024

androidx.wear:wear-phone-interactions:1.1.0-alpha04 viene rilasciato. La versione 1.1.0-alpha04 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto RemoteAuthClient.isRemoteAuthAvailable, che verifica se è disponibile l'autenticazione remota. (Ibc10c)

Versione 1.1.0-alpha02

10 gennaio 2024

androidx.wear:wear-remote-interactions:1.1.0-alpha02 viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto RemoteActivityHelper.isRemoteActivityHelperAvailable, che consente di verificare se la funzionalità di avvio di un'attività remota è disponibile. (I107a9)
  • Abbiamo aggiornato il costruttore di RemoteActivityHelper in modo che il parametro facoltativo sia compatibile in Java. (I75554)

Versione 1.1.0-alpha01

21 giu 2023

androidx.wear:wear-remote-interactions:1.1.0-alpha01 viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.

Correzioni di bug

  • È stato migliorato il modo in cui vengono eseguite le operazioni di completamento e gestione degli errori in RemoteActivityHelper. (I60d60)

Contributo esterno

  • Rimuovi la dipendenza Guava da wear-remote-interactions e utilizza alternative più piccole.

Wear-Smartphone-Interazioni versione 1.1.0-alpha03

9 marzo 2022

androidx.wear:wear-phone-interactions:1.1.0-alpha03 viene rilasciato. La versione 1.1.0-alpha03 contiene questi commit.

Correzioni di bug

  • redirectUrl da OAuthRequest ora restituisce una stringa vuota se l'URL di reindirizzamento non è impostato nell'URL di richiesta specificato. (I44242)

Wear-Telefono-Interazioni versione 1.1.0-alpha02

15 dicembre 2021

androidx.wear:wear-phone-interactions:1.1.0-alpha02 viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.

Correzioni di bug

  • Correggi gli errori nella documentazione relativa a RemoteAuthClient, inclusi gli errori nello snippet di esempio di codice e nel link non più disponibile a ErrorCode (I260e8)

Wear-Telefono-Interazioni Versione 1.1.0-alpha01

15 settembre 2021

androidx.wear:wear-phone-interactions:1.1.0-alpha01 viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.

Modifiche alle API

  • Proprietà redirectUrl aggiunta a OAuthRequest. (I98840, Ie684d)

Wear Continuing e interazioni versione 1.0.0

Wear-Smartphone-Interazioni versione 1.0.1

15 dicembre 2021

androidx.wear:wear-phone-interactions:1.0.1 viene rilasciato. La versione 1.0.1 contiene questi commit.

Correzioni di bug

  • È stata corretta un'eccezione da BridgingManager durante il tentativo di disattivare le notifiche di bridging senza excludedTags.

Wear-Telefono-Interazioni Wear-Remote-Interazioni Versione 1.0.0

15 settembre 2021

androidx.wear:wear-phone-interactions:1.0.0 e androidx.wear:wear-remote-interactions:1.0.0 vengono rilasciati. La versione 1.0.0 contiene questi commit.

Funzionalità principali della versione 1.0.0

La libreria delle interazioni telefoniche contiene API per le interazioni dagli indossabili ai telefoni. Contiene quanto segue:

  • PhoneDeviceType, che offre metodi di supporto per determinare il tipo di telefono a cui è associato l'orologio corrente, da utilizzare soltanto su dispositivi indossabili.
  • API BridgingManager, BridgingManagerService e BridgingConfig per abilitare/disabilitare le notifiche in fase di runtime e, facoltativamente, impostare tag per le notifiche esenti dalla modalità di bridging.
  • RemoteAuthClient, che offre assistenza per l'autenticazione remota su dispositivi indossabili e per l'aggiunta dell'estensione PKCE OAuth. Sono disponibili gestori e classi helper aggiuntivi per la comunicazione.

La libreria di interazioni remote contiene API per le interazioni tra dispositivi indossabili e telefoni. Contiene quanto segue:

  • WatchFaceConfigIntentHelper, che fornisce funzioni helper per specificare l'ID e il nome del componente nelle attività di configurazione del quadrante per l'annuncio complementare sul telefono.
  • RemoteActivityHelper che può essere utilizzata per aprire intent su altri dispositivi (ad esempio da smartwatch a smartphone).

Wear-Telefono-Interazioni Wear-Remote-Interazioni Versione 1.0.0-rc01

1° settembre 2021

androidx.wear:wear-phone-interactions:1.0.0-rc01 e androidx.wear:wear-remote-interactions:1.0.0-rc01 vengono rilasciati. La versione 1.0.0-rc01 contiene questi commit.

Correzioni di bug

  • Correzione di un bug che impediva la propagazione degli errori segnalati in Google Play Services al chiamante durante l'utilizzo di RemoteActivityHelper (I60d60)
  • Correzione del bug per cui RemoteActivityHelper non avrebbe mai completato il suo Futuro in assenza di nodi connessi o se non è stato trovato il nodeId richiesto (I60d60)

Versione 1.1 basata su Wear OS

Versione 1.1.0-alpha01

23 agosto 2023

androidx.wear:wear-ongoing:1.1.0-alpha01 viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.

Modifiche alle API

  • Aggiungi un campo per la descrizione dei contenuti ad Attività in corso. Verrà utilizzata dai servizi di accessibilità per descrivere l'Attività in corso. (I79fc6)

Correzioni di bug

  • Aggiunta di @RequiresPermission alle API che richiedono la concessione dell'autorizzazione POST_NOTIFICATIONS su SDK 33 e versioni successive. (Ie542e, b/238790278)

Versione Wear-Onboarding 1.0.0

1° settembre 2021

androidx.wear:wear-ongoing:1.0.0 viene rilasciato. La versione 1.0.0 contiene questi commit.

Funzionalità principali della versione 1.0.0

  • L'API Wear OnGoing Activities è un'API per sviluppatori, inclusi sviluppatori di terze parti, utilizzata per contrassegnare la loro attività come "Attività in corso" e fornire le informazioni necessarie.
  • Attività in corso si riferisce ad attività che potrebbero essere eseguite in background sullo smartwatch (ad esempio, esercizi, chiamate e contenuti multimediali). Su Wear 3, un'attività dichiarata come in corso sarà messa più in evidenza attraverso un'icona di overlay dedicata sul quadrante orologio e un rendering diverso in Avvio app.
  • Per ulteriori informazioni, consulta la Guida alle attività in corso di Wear

Wear-Telefono-Interazioni Wear-Remote-Interazioni Versione 1.0.0-beta01

18 agosto 2021

androidx.wear:wear-phone-interactions:1.0.0-beta01 e androidx.wear:wear-remote-interactions:1.0.0-beta01 vengono rilasciati. La versione 1.0.0-beta01 contiene questi commit.

Modifiche alle API

  • Classe RemoteIntentHelper rinominata in RemoteActivityHelper. Le funzioni RemoteIntentHelper#getRemoteIntentExtraIntent e RemoteIntentHelper#getRemoteIntentNodeId sono state rinominate rispettivamente in RemoteActivityHelper#getTargetIntent e RemoteActivityHelper#getTargetNodeId. (Id2042)

Versione Wear-On

18 agosto 2021

androidx.wear:wear-ongoing:1.0.0-rc01 viene rilasciato senza modifiche dal giorno 1.0.0-beta01. La versione 1.0.0-rc01 contiene questi commit.

Versione Wear corrente 1.0.0-beta01

4 agosto 2021

androidx.wear:wear-ongoing:1.0.0-beta01 viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.

Modifiche alle API

  • Alcuni setter su OnGoingActivity.Builder ora accettano un argomento null per fornire simmetria e coerenza a setter e getter (I17ee5)

Wear-Smartphone-Interazioni versione 1.0.0-alpha07

4 agosto 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha07 viene rilasciato. La versione 1.0.0-alpha07 contiene questi commit.

Modifiche alle API

  • Rinominato WearTypeHelper.isChinaDevice in WearTypeHelper.isChinaBuild. (I47302)
  • Abbiamo aggiornato la libreria RemoteAuthClient in modo da scegliere automaticamente redirect_uri in base al tipo di dispositivo (RoW/Cina). (I38866)
  • È stato risolto il bug che causava la mancata conversione di BridgingConfig in/da bundle con ClassCastException. Aggiunti test delle unità per la classe BridgingManagerService. (I68ecb)

Interazioni da remoto/usura versione 1.0.0-alpha06

4 agosto 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha06 viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.

Wear-Telefono-Interazioni versione 1.0.0-alpha06

21 luglio 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha06 viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.

Modifiche alle API

  • Ora la classe BridgingManagerSeviceBinder è una sottoclasse di Service e viene rinominata BridgingManagerSevice. (I9fca2)
  • Il metodo RemoteAuthClient.Callback.onAuthorizationError è stato modificato per includere il parametro OAuthRequest. I metodi che richiedono il callback ora richiedono anche un esecutore per l'esecuzione del callback. (I35e11)

Correzioni di bug

  • Abbiamo reso l'API di autenticazione più chiara con parametri più documentati e utilizzando proprietà ove possibile. (I12287)

Wear-Telefono-Interazioni Versione 1.0.0-alpha05

30 giugno 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha05 viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.

Correzioni di bug

  • Parametri documentati che devono essere passati nel costruttore per BridgingConfig.Builder.

Versione Wear-Onboarding 1.0.0-alpha06

2 giugno 2021

androidx.wear:wear-ongoing:1.0.0-alpha06 viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.

Modifiche alle API

  • Aggiungi il campo Titolo ad Attività in corso. (I7a405)

Correzioni di bug

  • SerializationHelper.copy() ora crea una copia difensiva delle informazioni (I8b276)
  • Documentazione migliorata per setCategory (Iff01f)

Versione Wear-Onboarding 1.0.0-alpha05

18 maggio 2021

androidx.wear:wear-ongoing:1.0.0-alpha05 viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.

Modifiche alle API

  • OngoingActivity ora dispone di getter per recuperare tutti i valori impostati direttamente tramite Builder (o i valori predefiniti recuperati dalla notifica associata). (Id8ac8)

    • La nuova classe Status viene ora utilizzata per creare lo stato del OngoingActivity
    • OngoingActivityData e OngoingActivityStatus non fanno più parte dell'API pubblica.
  • Le classi TextStatusPart e TimerStatusPart non fanno più parte dell'API pubblica. (I57fb6).

    • Per creare un Part con un testo statico, utilizza Status.TextPart.
    • Per creare un Part con un cronometro (contando alla rovescia), usa Status.Stopwatch
    • Per creare un Part con un timer (conto alla rovescia), usa Status.Timer

Versione Wear-Onboarding 1.0.0-alpha04

5 maggio 2021

androidx.wear:wear-ongoing:1.0.0-alpha04 viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

Modifiche alle API

  • OnprogressActivity, i metodi fromexistingOnandActivity ora si chiamano fetchOnandActivity.
  • Ora l'attività OnGoingActivity ha ora un insieme completo di getter, gli stessi che in precedenza erano disponibili solo in OnGoingActivityData. (I0ee4d)

Interazioni da remoto/usura versione 1.0.0-alpha05

21 luglio 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha05 viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto la classe RemoteIntentHelper (in precedenza RemoteIntent nella libreria di supporto per dispositivi indossabili), che può essere utilizzata per aprire intent su altri dispositivi (ad esempio da smartwatch a telefono). (I1d7e0)

  • La classe PlayStoreAvailability è stata rimossa dalla libreria AndroidX. Per rilevare se il Play Store è disponibile su un telefono connesso, usa il metodo androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType per stabilire se il telefono connesso è uno smartphone Android. Quindi usa il metodo androidx.wear.utils.WearTypeHelper.isChinaDevice per determinare se lo smartphone connesso è un dispositivo cinese. Se il telefono è Android e non è cinese, sarà disponibile il Play Store. (Ie7dec)

Wear-Smartphone-Interazioni versione 1.0.0-alpha04

7 aprile 2021

androidx.wear:wear-phone-interactions:1.0.0-alpha04 viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

Modifiche alle API

  • Sono state aggiornate le costanti ErrorCode per rendere la nuova libreria compatibile con le versioni precedenti dell'implementazione nella libreria di assistenza per i dispositivi indossabili.

Correzioni di bug

  • È stata corretta l'eccezione causata dalla nuova API OAuth all'avvio di una sessione OAuth.

Interazioni da remoto/usura versione 1.0.0-alpha03

7 aprile 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha03 viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.

Modifiche alle API

  • PlayStoreAvailability modificato in una classe che contiene un oggetto companion con metodi statici. L'utilizzo rimane invariato.

Correzioni di bug

  • È stato corretto il documento di riepilogo per WatchFaceConfigIntentHelper in modo che mostrasse correttamente il codice di esempio con caratteri HTML effettivi.

Interazioni con il telefono Wear in corso versione 1.0.0-alpha03

10 marzo 2021

androidx.wear:wear-ongoing:1.0.0-alpha03 e androidx.wear:wear-phone-interactions:1.0.0-alpha03 vengono rilasciati. La versione 1.0.0-alpha03 contiene questi commit.

Nuove funzionalità

  • Esegui la migrazione di OAuthClient da Wearable Support Library ad AndroidX. Questa classe migrata viene rinominata RemoteAuthClient e offre supporto per l'autenticazione remota sugli indossabili, oltre al supporto per l'aggiunta dell'estensione OAuth PKCE. Sono disponibili gestori e classi helper aggiuntivi per la comunicazione.
  • Ora le attività in corso possono essere associate a una notifica con un tag, utilizzando il nuovo costruttore OnandActivity.Builder.

Modifiche alle API

  • Aggiunto il supporto per i tag di notifica nella libreria di attività in corso (I653b4)
  • Esegui la migrazione di OAuthClient da Wear Support Library ad AndroidX e aggiungi il supporto per l'estensione OAuth PKCE (I3eaaa)

Interazioni da remoto con Wear versione 1.0.0-alpha02

10 marzo 2021

androidx.wear:wear-remote-interactions:1.0.0-alpha02 viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.

Nuove funzionalità

  • È in corso la migrazione della classe PlayStoreAvailability da Wearable Support Library ad AndroidX, che fornisce un'API per verificare se il Play Store è disponibile sul telefono.

Correzioni di bug

  • Migrazione della classe Play StoreAvailability da Wearable Support Library ad AndroidX. (I69bfe)

Versione 1.0.0-alpha02

10 febbraio 2021

androidx.wear:wear-ongoing:1.0.0-alpha02 e androidx.wear:wear-phone-interactions:1.0.0-alpha02 vengono rilasciati. La versione 1.0.0-alpha02 contiene questi commit.

Modifiche alle API

  • Aggiunto il supporto per stati più complessi. Sono composti da uno o più modelli e da una serie di parti che verranno utilizzate per riempire i segnaposto del modello. L'elemento OnOnActivityStatus ora dispone di un metodo statico per creare stati semplici con una sola parte (testo o timer) e di un Builder per creare stati più complessi. (I1fe81)
  • Sposta le classi BridgingManager e BridgingConfig dalla libreria di supporto Wear ad AndroidX, che fornisce le API per attivare/disattivare le notifiche in fase di runtime e, facoltativamente, impostare tag per le notifiche che sono esenti dalla modalità di bridging. (I3a17e)

Versione 1.0.0-alpha01

27 gennaio 2021

androidx.wear:wear-ongoing:1.0.0-alpha01, androidx.wear:wear-phone-interactions:1.0.0-alpha01 e androidx.wear:wear-remote-interactions:1.0.0-alpha01 vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.

Modifiche alle API

  • Esegui la migrazione della libreria Attività in corso in una nuova libreria secondaria: Wear onboarding. I corsi ora sono disponibili nel pacchetto androidx.wear.onGoing (in precedenza androidx.wear.onGoingactivity) (I7c029)

  • Crea una nuova libreria di supporto per contenere corsi che supportano le interazioni dagli indossabili ai telefoni. Inizialmente contiene classi di cui è stata eseguita la migrazione dalla libreria di supporto per dispositivi indossabili. (Id5180)

  • Esegui la migrazione della classe PhoneDeviceType da Wearable Support Library ad AndroidX. La classe migrata viene rinominata PhoneTypeHelper che fornisce metodi di supporto per determinare il tipo di smartphone a cui è associato l'orologio corrente, da utilizzare soltanto su dispositivi indossabili. (Ibd947)

  • Crea una nuova libreria di supporto per contenere classi che supportano le interazioni tra dispositivi indossabili e telefoni. Inizialmente contiene classi di cui è stata eseguita la migrazione dalla libreria di supporto per dispositivi indossabili. (I9deb4)

  • Esegui la migrazione della classe WatchFaceCompanion da Wearable Support Library ad AndroidX. La classe migrata viene rinominata WatchFaceConfigIntentHelper, che fornisce funzioni helper per specificare l'ID e il nome del componente nelle attività di configurazione del quadrante nell'abbinamento sullo smartphone. Può anche essere utilizzata localmente per configurare il quadrante sul dispositivo indossabile. (Ia455f)

Indossa complicazioni e quadrante 1.0.0

Versione 1.0.0-alpha22

15 settembre 2021

androidx.wear:wear-*:1.0.0-alpha22 viene rilasciato. La versione 1.0.0-alpha22 contiene questi commit.

Nuove funzionalità

  • L'editorSession ora si iscrive agli osservatori del ciclo di vita, quindi non devi più chiuderla esplicitamente quando la tua attività scompare.

Modifiche alle API

  • EditorSession e AscoltaableEditorSession ora utilizzano kotlin StateFlows per complicationSlotsState, ComplicationsPreviewData e ComplicationsDataSourceInfo. (I761d9)
  • EditorSession#userStyle ora è un MutableStateFlow<UserStyle> (I32ca9)
  • EditorSession.createOnWatchEditorSession ora utilizza un osservatore del ciclo di vita e si chiude automaticamente quando osserva onDestroy. Inoltre, ora createOnWatchEditorSession richiede solo di trasmettere l'attività. Le modifiche identiche sono state applicate anche ad AscoltaableEditorSession. (Ic6b7f)
  • Il costruttore di CustomValueUserStyleSetting è stato reintegrato come parte dell'API pubblica. (I2e69a)
  • UserStyle ora eredita da Map<UserStyleSetting, UserStyleSetting.Option> e MutableUserStyleSetting#put restituisce IllegalArgumentException se l'impostazione non è presente nello schema o se l'opzione non corrisponde all'impostazione. (Iba40f)

Versione 1.0.0-alpha21

1° settembre 2021

androidx.wear:wear-*:1.0.0-alpha21 viene rilasciato. La versione 1.0.0-alpha21 contiene questi commit.

Modifiche alle API

  • Tutte le API pubbliche per quadranti, client, editor e complicazioni usano ora java.time.Instant per orari anziché Long, di conseguenza il livello API minimo è aumentato a 26. (I3cd48)
  • Il quadrante orologio e le API di complicazione ora utilizzano il valore immutabile ZonedDateTime anziché Calendar. (I25cf8)
  • Gli slot ComplicationSlot vengono ora inizializzati con NoDataComplicationData, ComplicationSlot.complicationData ora ha sempre un valore e CanvasComplicationDrawable.complicationData non è più null. (I4dfd6) In questo modo si riduce (ma non elimina) lo sfarfallio delle complicazioni quando si passa da un quadrante all'altro.

Versione 1.0.0-alpha20

18 agosto 2021

androidx.wear:wear-*:1.0.0-alpha20 viene rilasciato. La versione 1.0.0-alpha20 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto createFallbackPreviewData a ComplicationDataSourceInfo, che può essere utilizzato quando ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData restituisce null. (I38c4d)
  • L'API ComplicationDataSourceUpdateRequester è stata trasformata in un'interfaccia per consentire la simulazione nei test delle unità. Puoi creare una concreta ComplicationDataSourceUpdateRequester con ComplicationDataSourceUpdateRequester.create(). (I7da22)
  • RenderParameters.pressComplicationSlotIds è stato sostituito da RenderParameters.lastComplicationTapDownEvents che espone la nuova classe TapEvent che contiene una tripla di coordinate x e y del tocco in pixel e un timestamp. WatchFace.TapListener.onTap è stato sostituito da onTapEvent(@TapType tapType: Int, tapEvent: TapEvent). Inoltre, InteractiveWatchFaceClient.displayPressedAnimation è stato rimosso. (Id87d2)
  • Aggiunta un'annotazione relativa ai thread esplicita per setImportantForAccessibility (I990fa)
  • Il tipo di complicazioneSlotBoundsType è stato spostato in androidx-wear-watchface.ComplicationSlotBoundsType nel quadrante di usura. (I09420)
  • Abbiamo aggiunto il supporto per il trasferimento di ID risorsa stringa in UserStyleSetting e Opzioni. Questo è ora il metodo consigliato per creare questi oggetti. (I03d5f)
  • Sono stati imposti dei limiti alle dimensioni massime dei cavi di uno schema UserStyle. Inoltre, le icone nello schema non devono essere più grandi di 400 x 400 pixel. (I3b65b)
  • Abbiamo aggiunto una classe MutableUserStyle per supportare le modifiche alle istanze UserStyle (I95a40)
  • Abbiamo rinominato ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient in ListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient. (I64ce2)
  • Abbiamo modificato EditorState.previewComplicationsData per contenere solo i dati relativi alle complicazioni attivate e abbiamo aggiunto EditorSession.DEFAULT_PREVIEW_TIME_MILLIS che, se trasmesso a renderWatchFaceToBitmap o PreviewScreenshotParams, richiede il rendering con il tempo di anteprima predefinito del quadrante. (If7b3c)
  • Abbiamo rimosso i costruttori UserStyleSetting che acquisiscono CharSequence dall'API pubblica. Si consiglia di utilizzare i costruttori che richiedono gli ID StringResource. (I8537b)
  • CurrentUserStyleRepository.UserStyleChangeListener ora supporta la conversione SAM. (I85989)

Versione 1.0.0-alpha19

4 agosto 2021

androidx.wear:wear-*:1.0.0-alpha19 viene rilasciato. La versione 1.0.0-alpha19 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient, che fornisce un wrapper ListenableFuture per WatchFaceMetadataClient.createWatchFaceMetadataClient. (I5fa37)
  • UserStyleOption.getOptionForId ora accetta UserStyleOption.Id anziché un array di byte. (I469be)
  • Fornisci le costanti BooleanOption.TRUE e BooleanOption.FALSE e non consentire la creazione di istanze (I46e09)
  • I metodi in wear-watchface-client che possono generare RemoteException sono stati ora annotati di conseguenza. (Ib8438)
  • Per coerenza abbiamo rinominato EditorSession.createOnWatchEditingSession in createOnWatchEditorSession; allo stesso modo, createHeadlessEditingSession ora è createHeadlessEditorSession. Anche i loro involucri di guava sono stati rinominati. (I1526b)
  • Ora EditorSession è un'interfaccia e ListenableEditorSession.commitChangesOnClose è ora delegato correttamente. (I7dc3e)
  • Ora rifiutiamo qualsiasi schema di stile utente con impostazioni o opzioni con ID in conflitto (Ic2715)
  • Abbiamo aggiunto un dispositivo UserStyle.get sovraccarico che accetta UserStyleSetting.Id. (I2aa0f)

Versione 1.0.0-alpha18

21 luglio 2021

androidx.wear:wear-*:1.0.0-alpha18 viene rilasciato. La versione 1.0.0-alpha18 contiene questi commit.

Modifiche alle API

  • Abbiamo spostato ComplicationHelperActivity nella raccolta androidx.wear:wear-watchface. (I39e76)
  • Per coerenza e chiarezza, il nome ComplicationProvider è stato rinominato ComplicationDataSource e tutte le classi il cui nome includeva Provider sono state rinominate in modo simile. (Iaef0b)
  • Il dominio CanvasComplication.isHighlighted è stato spostato in RenderParameters.pressedComplicationSlotIds e rappresenta un passo verso la trasformazione di CanvasComplication stateless. Per supportare questa modifica, CanvasComplication.render ora utilizza anche slotId come parametro e passiamo ComplicationSlot a GlesTextureComplication. (I50e6e)
  • Abbiamo aggiunto headlessDeviceConfig a EditorRequest. Se è diverso da null, questo parametro viene utilizzato per creare un'istanza headless per eseguire il backup della sessione EditorSession anziché agire sull'istanza interattiva. In questo modo è possibile richiamare l'editor per un quadrante diverso da quello corrente. (I0a820)
  • Abbiamo aggiunto un WatchFaceMetadataClient sperimentale che consente il recupero efficiente dei metadati statici del quadrante, come UserStyleSchema, e dei dettagli corretti su ComplicationSlots. (I6bfdf)
  • Abbiamo rinominato CanvasRenderer.uiThreadInit init. (I6fff9)
  • Abbiamo aggiunto PreviewScreenshotParams un nuovo parametro facoltativo per EditorRequest che indica a EditorSession di acquisire uno screenshot di anteprima su commit con questo parametro. L'immagine di anteprima è esposta su EditorState.previewImage. (Ic2c16)

Correzioni di bug

  • Gli sviluppatori non devono più aggiungere ComplicationHelperActivity al proprio manifest. (I6f0c2)

Versione 1.0.0-alpha17

30 giugno 2021

androidx.wear:wear-*:1.0.0-alpha17 viene rilasciato. La versione 1.0.0-alpha17 contiene questi commit.

Nuove funzionalità

  • In GlesRenderer, makeUiThreadContextCurrent e makeBackgroundThreadContextCurrent sono stati sostituiti da runUiThreadGlCommands e runBackgroundThreadGlCommands, che entrambi accettano Runnable. La libreria garantisce che in un dato momento sia in esecuzione un solo comando GL eseguibile alla volta.

  • Per semplificare l'inizializzazione di UiThread, abbiamo aggiunto CanvasRenderer.uiThreadInit che viene chiamato una volta su UiThread prima di qualsiasi chiamata per il rendering. Abbiamo anche aggiunto onRendererCreated a CanvasComplication per consentire a Renderer e CanvasComplication di condividere più facilmente lo stato.

  • Per chiarezza abbiamo rinominato Complication in ComplicationSlot e complicationId in complicationSlotId o complicationInstanceId, a seconda dell'utilizzo

Modifiche alle API

  • Per chiarezza, abbiamo rinominato Complication in ComplicationSlot e complicationId in complicationSlotId o complicationInstanceId, a seconda dell'utilizzo. Le classi che utilizzano Complication sono state rinominate in modo simile. Ad esempio, ComplicationsManager ora si chiama ComplicationSlotsManager. (I4da44)
  • In GlesRenderer, makeUiThreadContextCurrent e makeBackgroundThreadContextCurrent sono stati sostituiti da runUiThreadGlCommands e runBackgroundThreadGlCommands, che accettano entrambi Runnable. Queste funzioni sono necessarie solo se devi effettuare chiamate GL al di fuori del rendering, runBackgroundThreadGlCommands e onUiThreadGlSurfaceCreated. Questa operazione è necessaria perché possono esserci più GlesRenderer, ognuno con i propri contesti nello stesso processo, potenzialmente da quadranti diversi. Oltre all'accesso al contesto GL attuale condiviso, viene ora sincronizzato. (I04d59)
  • Abbiamo aggiunto CanvasRenderer.uiThreadInit che viene chiamato una volta su UiThread prima di qualsiasi chiamata da visualizzare. Sempre per chiarezza in GlesRenderer abbiamo rinominato onGlContextCreated in onBackgroundThreadGlContextCreated e onGlSurfaceCreated in onUiThreadGlSurfaceCreated. (If86d0)
  • HeadlessWatchFaceClient e InteractiveWatchFaceClient getComplicationsSlotState sono stati rinominati come getComplicationSlotsState. In ComplicationSlot: createRoundRectComplicationBuilder, createBackgroundComplicationBuilder e createEdgeComplicationBuilder sono stati rinominati rispettivamente createRoundRectComplicationSlotBuilder, createBackgroundComplicationSlotBuilder e createEdgeComplicationSlotBuilder. (Ib9adc)
  • Abbiamo aggiunto onRendererCreated a CanvasComplication che semplifica la condivisione dello stato per il renderer e CanvasComplication. (I5e1ac)

Versione 1.0.0-alpha16

16 giugno 2021

androidx.wear:wear-*:1.0.0-alpha16 viene rilasciato. La versione 1.0.0-alpha16 contiene questi commit.

Nuove funzionalità

  • Abbiamo corretto una serie di bug relativi alle recenti modifiche al modello di organizzazione in thread e alla risoluzione di altri problemi relativi all'editor dei quadranti.

Correzioni di bug

  • Evita gli NPE in onComplicationProviderChooserResult (b/189594557)
  • Risolvi i problemi relativi alle superfici obsolete e disegnoBlack (b/189452267)
  • Correggi i problemi relativi alla razza nell'accesso a complicationsManager.watchState (b/189457893)
  • Correggere il bug relativo alla durata del thread in background (b/189445428)
  • Risolvere i problemi relativi all'editor dei quadranti orologio Pre-R (b/189126313)
  • Non aggiornare i parametri di avvio diretto per le modifiche allo stile dell'editor (b/187177307)

Versione 1.0.0-alpha15

2 giugno 2021

androidx.wear:wear-*:1.0.0-alpha15 viene rilasciato. La versione 1.0.0-alpha15 contiene questi commit.

Nuove funzionalità

La maggior parte dell'inizializzazione dei quadranti viene ora eseguita su un thread in background, tuttavia, dopo il caricamento di tutto il rendering dei quadranti, ecc. viene eseguita su UiThread. Esiste una barriera di memoria tra il caricamento e il rendering, quindi la maggior parte dei quadranti degli utenti non deve fare nulla di speciale. I quadranti che utilizzano GLES possono rappresentare un'eccezione, poiché il contesto è specifico per i thread e vengono creati due contesti collegati, in modo da poter caricare risorse GL (ad esempio, texture e Shader) nel thread di sfondo e utilizzarle nell'UiThread.

Abbiamo suddiviso la costruzione dei quadranti in tre funzioni: createUserStyleSchema, createComplicationsManager e createWatchFace. Presupponiamo che createUserStyleSchema e createComplicationsManager siano veloci e createWatchFace potrebbe richiedere del tempo per caricare gli asset. Sfruttando questa opportunità, abbiamo introdotto WatchFaceControlClient.getDefaultProviderPoliciesAndType, che restituisce una mappa degli ID complicazione al valore predefinitoComplicationProviderPolicies e al valore ComplicationType predefinito. Questa operazione è più rapida rispetto alla creazione di un'istanza headless, poiché non è necessario inizializzare completamente il quadrante per eseguire la query.

Infine, le complicazioni vengono ora create con un CanvasComplicationFactory che consente la costruzione pigra dei renderer CanvasComplication.

Modifiche alle API

  • @TargetApi sostituito con @RequiresApi. (I0184a, b/187447093, b/187447094)
  • Abbiamo introdotto WatchFaceControlClient.getDefaultProviderPoliciesAndType, che restituisce una mappa degli ID complicazione al valore predefinitoComplicationProviderPolicies e al valore ComplicationType predefinito. Ove possibile, viene utilizzato un percorso rapido che eviti di creare completamente un quadrante. Per facilitare questa operazione, l'API WatchFaceService ha dovuto cambiare con due nuovi metodi: createUserStyleSchema e createComplicationsManager, i cui risultati vengono passati a createWatchFace. Inoltre, le complicazioni ora vengono create con un CanvasComplicationFactory che consente la costruzione lazy dei renderer CanvasComplication. (Iad6c1)
  • Abbiamo rimosso MOST_RECENT_APP da SystemProviders. (I3df00)
  • ObservableWatchData è ora una classe sigillata. (Ic940d)
  • CanvasComplicationFactory.create (che in genere è associato a io) viene ora chiamato in un thread in background per ogni complicazione prima che inizi il rendering del thread dell'UI. Esiste una barriera di memoria tra la creazione e il rendering, quindi non sono necessarie primitive di threading speciali. (Ia18f2)
  • La costruzione del quadrante ora viene eseguita su un thread in background, anche se il rendering viene eseguito sul thread dell'UI, GlesRenderer supporta due contesti collegati a questo scopo. WatchFaceControlClient.createHeadlessWatchFaceClient e WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient potrebbero essere risolti prima del completamento di WatchFaceService.createWatchFace. Le chiamate API successive verranno bloccate fino al completamento dell'inizializzazione di watchFace. (Id9f41)
  • EXPANSION_DP e STROKE_WIDTH_DP non sono più visibili in api.txt. (I54801)
  • Abbiamo fatto sì che EditorSession.createOnWatchEditingSession restituisca un'eccezione di TimeoutCancellationException se si verifica un errore invece di inviare una sessione nulla. Inoltre, il valore restituito da EditorRequest.createFromIntent e EditorSession.createOnWatchEditingSession ora è NonNull. (I41eb4).

Versione 1.0.0-alpha14

18 maggio 2021

androidx.wear:wear-*:1.0.0-alpha14 viene rilasciato. La versione 1.0.0-alpha14 contiene questi commit.

Nuove funzionalità

  • EditorSession.openComplicationProviderChooser ora restituisce ChosenComplicationProvider che contiene l'ID complicazione ComplicationProviderInfo e un bundle contenente eventuali extra aggiuntivi restituiti dal selettore del provider.
  • Inoltre, stiamo costantemente migrando il codice a Kotlin e la maggior parte dell'API per i quadranti è ora definita in Kotlin.

Modifiche alle API

  • Le proprietà GlesRenderer eglContext e eglDisplay ora non sono null. Eventuali errori GL ora vengono segnalati tramite GlesRenderer.GlesException anziché tramite RuntimeEccezioni. (Ib1005)
  • Abbiamo eseguito la migrazione di androidx.wear.watchface.complications.rendering.ComplicationDrawable da Java a Kotlin (Ibc3eb)
  • Abbiamo eseguito la migrazione di androidx.wear.watchface.complications.rendering.ComplicationStyle da Java a Kotlin (I3375e)
  • Abbiamo aggiunto informazioni sul fornitore di complicazioni per ogni complicazione all'interno di EditorSession. (I37f14)
  • Abbiamo esteso il risultato di EditorSession.openComplicationProviderChooser in modo da includere le informazioni restituite dallo stesso. (Iead6d)

Indossa complicazioni e quadrante versione 1.0.0-alpha13

5 maggio 2021

androidx.wear:wear-*:1.0.0-alpha13 viene rilasciato. La versione 1.0.0-alpha13 contiene questi commit.

Nuove funzionalità

  • I quadranti possono avere elementi visivi importanti oltre a mostrare l'ora e le complicazioni. Per offrire supporto per lo screen reader, ora il quadrante può specificare l'accessibilità ContentDescriptionLabels tramite la proprietà aggiuntivaContentDescriptionLabels del renderer. Inoltre, è stato aggiunto a complicazioni l'ordine delle ContentDescriptionLabels per l'accessibilità TraversalIndex. Può essere modificato da un'impostazione ComplicationsUserStyleSetting.

  • Per incoraggiare gli sviluppatori a valutare attentamente gli screen reader, abbiamo reso obbligatorio il trasferimento dei campi contentDescription di ShortTextComplicationData.Builder, LongTextComplicationData.Builder e RangedValueComplicationData.Builder nei loro costruttori. Se viene trasmesso ComplicationText.EMPTY per contentDescription, verrà generato automaticamente un contentDescription dal testo e dal titolo.

  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient ora genera ServiceStartFailureException se il quadrante genera un'eccezione durante l'inizializzazione, in questo modo è molto più facile diagnosticare i problemi durante l'avvio del quadrante.

Modifiche alle API

  • Abbiamo aggiunto il supporto per avere un nome di componente null in ComplicationProviderInfo, necessario per supportare le versioni precedenti di Wear OS. (I744d2)
  • Abbiamo eseguito la migrazione di androidx.wear.complications.SystemProviders da Java a Kotlin. (Ia1f8b)
  • Abbiamo nascosto dall'API pubblica tutte le classi presenti in android.support.wearable.complications e abbiamo creato wrapper corrispondenti in AndroidX dove necessario. (I7bd50)
  • Abbiamo rinominato il metodo in TimeDifferenceComplicationText.Builder da setMinimumUnit a setMinimalTimeUnit. (I20c64)
  • Abbiamo reso obbligatorio il passaggio dei campi contentDescription di ShortTextComplicationData.Builder, LongTextComplicationData.Builder e RangedValueComplicationData.Builder nel costruttore. (I8cb69)
  • Abbiamo rinominato ComplicationProviderService.onComplicationUpdate in onComplicationRequest e i parametri ID e tipo di questo metodo incapsulati in dati ComplicationRequest. Il listener corrispondente è stato rinominato ComplicationRequestListener e il relativo metodo ComplicationRequestListener.onComplicationData. (Iaf146)
  • Abbiamo rimosso il metodo isActiveAt da ComplicationData e mostrato il campo validTimeRange al suo posto. La chiamata di questo metodo può essere sostituita con validTimeRange.contains. (I65936)
  • Abbiamo modificato la descrizione del metodo ComplicationProviderService.onComplicationActivated per ricevere un ComplicationType anziché un valore int. (Idb5ff)
  • Migrazione di ProviderUpdateRequester da Java a Koltin. (Ibce13)
  • GlesRender.makeContextCurrent è ora pubblico. Il codice del quadrante potrebbe dover effettuare chiamate gl al di fuori del rendering e onGlContextCreated e dato che potrebbe esistere un contesto sia interattivo che senza testa, è necessario chiamare questo elemento. (I8a43c)
  • WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient ora genera ServiceStartFailureException se il quadrante viene generato durante l'inizializzazione. Inoltre, WatchFaceService ora genera un'eccezione se createWatchFace richiede più di 6 secondi. (I59b2f)
  • Abbiamo rimosso la proprietà ID inutilizzata di GlesTextureComplication. (I28958)
  • Il quadrante ora può specificare l'accessibilità ContentDescriptionLabels tramite la proprietà AdditionalContentDescriptionLabels di Renderer. Oltre a controllare l'ordine delle etichette di ContentDescriptionLabels, l'accessibilità TraversalIndex è stata aggiunta a complicazioni. Può essere modificato da un'impostazione ComplicationsUserStyleSetting. (Ib7362)
  • Espandi la documentazione sulla gestione degli eventi di tocco nel quadrante. (Iaf31e)

Correzioni di bug

  • EditorSession.getComplicationsPreviewData() ora restituisce una mappa per ogni complicazione, anziché solo, non vuota. Per le complicazioni vuote viene utilizzata un'istanza di VuoComplicationData. (I1ef7e).

Indossa complicazioni e quadrante orologio versione 1.0.0-alpha12

21 aprile 2021

androidx.wear:wear-*:1.0.0-alpha12 viene rilasciato. La versione 1.0.0-alpha12 contiene questi commit.

Nuove funzionalità

Gli editor dei quadranti devono evidenziare parti del quadrante per aiutare a capire quale aspetto di uno smartwatch viene configurato. Abbiamo esteso RenderParameters per mettere in evidenza stili e complicazioni. È disponibile un nuovo Highlightlayer opzionale che deve essere applicato al quadrante orologio con una trasparenza alfa (l'API per gli screenshot può eseguire questa operazione per te o fornire autonomamente il livello evidenziato per la massima flessibilità). Ad esempio, supponi di avere uno stile che ti consente di configurare l'aspetto delle lancette dell'orologio, il renderer nel relativo renderingHighlightlayer può tracciare un contorno intorno a queste lancette.

Per incoraggiare il supporto del provider di complicazioni per l'accessibilità, abbiamo reso il campo contentDescription di PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder e SmallImageCompplicationData.Builder obbligatorio del costruttore. Sono state aggiunte ComplicationTapFilter e Complication.createEdgeComplicationBuilder per supportare le complicazioni relative ai bordi (disegnate lungo i bordi dello schermo). Il rendering e i test sugli hit delle complicazioni per i bordi vengono lasciati al quadrante orologio. I test sugli hit da Edge non sono supportati dall'editor companion.

Modifiche alle API

  • Prefisso PROVIDER_ aggiunto alle costanti in SystemProviders. (I1e773)
  • Abbiamo reso obbligatorio il passaggio dei campi contentDescription di PhotoImageComplicationData.Builder, MonochromaticImageComplicationData.Builder e SmallImageComplicationData.Builder nel costruttore. (I9643a)
  • ProviderInfoRetriever.requestPreviewComplicationData è stato rinominato in retrievePreviewComplicationData. (I911ee)
  • Migrazione di ComplicationProviderService da Java a Koltin eseguita. (I849f2)
  • Il metodo ComplicationProviderService.onBind è ora definitivo (I39af5)
  • Abbiamo reintegrato l'interfaccia CanvasComplication e spostato CanvasComplicaitonDrawable, GlesTextureComplication e ComplicationHighlightRenderer in wear-watchface-complications-rendering. (I84670)
  • È stato eseguito il refactoring di RenderParameters per supportare la visualizzazione estesa dei momenti salienti. Ora è possibile richiedere il rendering delle evidenziazioni per gli stili e per tutti o una singola complicazione. Inoltre, CanvasRenderer e GlesRenderer dispongono di un nuovo metodo renderingHighlightlayer astratto per il rendering di qualsiasi evidenziazione richiesta dall'editor. Il livello è stato rinominato WatchFacelayer. (Ic2444)
  • ComplicationTapFilter e Complication.createEdgeComplicationBuilder sono stati aggiunti per supportare le complicazioni a livello perimetrale. Il rendering e i test sugli hit delle complicazioni per i bordi vengono lasciati al quadrante orologio. Gli hit test non sono supportati all'interno degli editor. (Ia6604)
  • Per DoubleRangeUserStyleSetting e LongRangeUserStyleSetting: defaultValue, maximumValue e minimumValue ora sono proprietà kotlin. Inoltre, le funzioni UserStyleSetting.Option come toBooleanOption, toCoplicationOptions, toListOption e altre sono state rimosse. (I52899)
  • Aggiungi le dimensioni del mento alle proprietà del dispositivo disponibili per il quadrante. (I76e1e)
  • Il costruttore di ComplicationHighlightRenderer ora accetta i parametri outlineExpansion e outlineStrokeWidth. (I87009)
  • ComplicationDrawable.getNoDataText ora fa parte dell'API pubblica. (I00598)

Versione 1.0.0-alpha11

7 aprile 2021

androidx.wear:wear-*:1.0.0-alpha11 viene rilasciato. La versione 1.0.0-alpha11 contiene questi commit.

Nuove funzionalità

  • Abbiamo migliorato l'estetica delle API dei quadranti. La maggior parte delle modifiche è costituita da semplici ridenominazioni, ma InteractiveWatchFaceWcsClient e InteractiveWatchFaceSysUiClient sono state unite in InteractiveWatchFaceClient.

Modifiche alle API

  • ContentDescriptionLabel.text è ora un ComplicationText anziché la vecchia libreria di supporto indossabile TimeDependentText. (I80c03)
  • La presenza di SystemProviders.GOOGLE_PAY su tutti i dispositivi Android R non è garantita, pertanto è stata rimossa dall'elenco. È comunque possibile utilizzare questo fornitore tramite DefaultComplicationProviderPolicy (If01b5)
  • Abbiamo rinominato ComplicationUpdateCallback in ComplicationUpdateListener per coerenza. (I61ec7)
  • La mappa del formato del cavo UserStyle è stata modificata in Map<String, byte[]> e per praticità è stata aggiunta all'API pubblica una classe UserStyleData che ora viene utilizzata da wear-watchface-client e wear-watchface-editor. Inoltre, CustomValueUserStyleSetting.CustomValueOption.value ora è byte[] anziché String. (Iaa103)
  • UserStyleSetting e UserStyleSetting.Option ora usano UserStyleSetting.Id e UserStyleSetting.Option.Id rispettivamente per archiviare i propri ID anziché una stringa. (I63f72)
  • InteractiveWatchFaceClient.SystemState è stato rinominato in WatchUiState. (I6a4e0)
  • InteractiveWatchFaceWcsClient e InteractiveWatchFaceSysUiClient sono stati uniti perché è stato difficile spiegare la divisione delle responsabilità (Iff3fa)
  • I valori di enum dei livelli sono stati rinominati per maggiore chiarezza. Layer#TOP_LAYER ora è Layer#COMPLICATIONS_OVERLAY e Layer#BASE_LAYER ora è Layer#BASE (Ia144e)
  • UserStyleListener è stato rinominato in UserStyleChangeListener (I18524)
  • UserStyleRepository è stato rinominato in CurrentUserStyleRepository (I6ea53)
  • InteractiveWatchFaceWcsClient.updateInstance è stato rinominato in updateWatchfaceInstance. (I321dc)
  • Gli eventi TapType di WatchFace sono stati rinominati per essere allineati a MotionEvents / Compose. (I0dfd0)
  • TakeWatchfaceScreenshot è stato rinominato renderingWatchFaceToBitmap e takeCompplicationScreenshot è stato rinominato in renderComplicationToBitmap (Ie0697)
  • L'interfaccia di CanvasComplication è stata rimossa a favore della classe aperta CanvasComplicationDrawable. (I1f81f)
  • WatcfaceControlServiceFactory è stato rimosso dall'API pubblica. (I1f8d3)
  • Abbiamo rinominato CanvasComplication.setData in CanvasComplication.loadData. (If1239)
  • ComplicationsManager.bringAttentionToComplication è stato rinominato in displayPressedAnimation. (Ic4297)
  • WatchFaceService.createWatchFace ora ha un'annotazione @UiThread. (Ib54c2)
  • È stato modificato il nome di un parametro CanvasComplicationDrawable per correggere un bug. (I50dac)
  • Abbiamo aggiunto HeadlessWatchFaceClient.toBundle() e HeadlessWatchFaceClient.createFromBundle per supportare l'invio di HeadlessWatchFaceClient tramite AIDL. (I07c35)
  • HeadlessWatchFaceClient e InteractiveWatchFaceClient ora dispongono di ClientDisconnettiListener e isConnectionAlive() per consentirti di verificare se la connessione si interrompe per qualche motivo (ad esempio se il quadrante viene interrotto). (Ie446d)
  • WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync è ora una funzione di sospensione ed è stata rinominata come getOrCreateInteractiveWatchFaceClient. (Ib745d)
  • EditorState.commitChanges e hasCommitChanges() sono stati rinominati come shouldCommitChanges(). (I06e04)
  • previewComplicationData è stato rinominato in previewComplicationsData per indicare che (di solito) sono presenti più complicazioni nella mappa. (I56c06)
  • InteractiveWatchFaceWcsClient.bringAttentionToComplication è stato rinominato in displayPressedAnimation per coerenza con ComplicationsManager.displayPressedAnimation. (Ic9999)
  • Tutte le istanze dell'ID istanza del quadrante sono state incapsulate in una nuova classe WatchFaceId (I45fdf)
  • La proprietà complicationState è stata rinominata in complicationsState per indicare la pluralità. (Ided07)
  • Abbiamo rimosso le varie conversioni di Binder per il quadrante orologio e il cliente, che dovrebbero essere necessarie. (Icc4c0)
  • Per coerenza, è stato eseguito il refactoring di EditorServiceClient in modo da utilizzare listener anziché osservatori. (Iec3a4)
  • Abbiamo aggiunto un paio di annotazioni @Px mancanti a InteractiveWatchFaceSysUiClient e WatchFaceControlClient. (I3277a)
  • Rinominato EditorObservationrCallback in EditorObservationrListener per coerenza. (Ie572d)
  • EditorState.watchFaceInstanceId è limitato al livello API Android R e versioni successive e non è più null. (Id52bb)
  • EditorSession.launchComplicationProviderChooser è stato rinominato in openComplicationProviderChooser. (I9d441)
  • EditorSession.createOnWatchEditingSessionAsync è stato rinominato in createOnWatchEditingSession e ora è una funzione di sospensione. (Id257b)
  • Sono state aggiunte diverse annotazioni @UiThread mancanti su EditorSession. (I6935c)
  • UserStyleSetting.affectsLayers è stato rinominato in affectedLayers. (I6e22b)

Versione 1.0.0-alpha10

24 marzo 2021

androidx.wear:wear-*:1.0.0-alpha10 viene rilasciato. La versione 1.0.0-alpha10 contiene questi commit.

Nuove funzionalità

  • Ora è possibile creare oggetti gl aperti (ad es. texture) durante WatchFaceService.createWatchFace perché GlesRenderer richiede una chiamata esplicita a initOpenGLContext, che può essere eseguita all'interno di createWatchFace.

Modifiche alle API

  • IdAndComplicationData presentava un problema ed è stato rimosso dall'API pubblica. È stato eseguito il refactoring delle classi e delle interfacce che lo utilizzavano. (I4c928)
  • Abbiamo sostituito ReferenceTime con CountUpTimeReference e CountDownTimeReference, che sono più intuitive. (Ib66c6)
  • Sono state aggiunte alcune annotazioni @Px e @ColorInt mancanti. (I9bbc3)
  • Ora Complication.complicationConfigExtras non può essere nullo e il valore predefinito è Bundle.EMPTY. (Iad04f)
  • Ora GlesRenderer richiede di chiamare initOpenGLContext dopo i lavori. Questa funzione era un dettaglio interno, ma ora si trova nell'API pubblica per consentire in precedenza le chiamate GL all'interno di createWatchFace. (I726c2)
  • Abbiamo rimosso Complication.setRenderer perché non dovrebbe essere necessario. (Ie992f)
  • Complicaiton.setComplicationBounds non fa più parte dell'API pubblica. Se devi regolare la posizione di una complicazione, puoi farlo tramite ComplicationsUserStyleSetting. (Ibd9e5)
  • ComplicationsManager.TapCallback.onComplicationSingleTapped è stato rinominato in onComplicationTapped. (I3a55c)
  • ComplicationOutlineRenderer.drawComplicationSelectOutline è stato rinominato in drawComplicationOutline. (I14b88)

Versione 1.0.0-alpha09

10 marzo 2021

androidx.wear:wear-complications-*:1.0.0-alpha09 e androidx.wear:wear-watchface-*:1.0.0-alpha09 vengono rilasciati. La versione 1.0.0-alpha09 contiene questi commit.

Nuove funzionalità

  • L'interfaccia tra l'host WCS/SysUI e il quadrante orologio si è evoluta. Ora un editor può determinare se una modifica dello stile attiva o disattiva una complicazione (attivata = inizialmenteEnabled più eventuali sostituzioni di ComplicationsUserStyleSetting). Inoltre, EditorService.closeEditorconsente a SysUI di chiudere da remoto un editor di quadranti, se necessario.
  • Inoltre InteractiveWatchFaceWcsClient.setUserStyle può usare un comando updateInstance più efficace che modifica l'ID istanza, imposta lo stile e cancella le complicazioni contemporaneamente.

Modifiche alle API

  • Gli eventi Trace sono stati aggiunti alle librerie dei quadranti orologio. (I1a141)
  • ComplicationState ha ora una nuova proprietà initiallyEnabled che è utile per prevedere le conseguenze del cambio di stile. (I8c905)
  • Abbiamo sostituito InteractiveWatchFaceWcsClient.setUserStyle con un comando più potente updateInstance che modifica l'ID istanza, imposta lo stile e cancella le complicazioni. (Ife6f6)
  • Le API per gli screenshot di WatchFaceClient non comprimono più gli screenshot perché erano lenti, ma lasciamo l'eventuale post-elaborazione al chiamante. (Id35af)
  • Ora è possibile chiudere da remoto un editor sul quadrante tramite EditorService.closeEditor. (Ic5aa4)
  • Annotazioni con supporto nullo aggiunte (Ic16ed)

Versione 1.0.0-alpha08

24 febbraio 2021

androidx.wear:wear-*:1.0.0-alpha08 viene rilasciato. La versione 1.0.0-alpha08 contiene questi commit.

Nuove funzionalità

  • Alcuni quadranti sono progettati in base a una o più complicazioni specifiche. A supporto di questa modifica, abbiamo aggiunto Complication.Builder#setFixedComplicationProvider che, se impostata su true, impedisce all'utente di modificare la complicazione in quello slot.
  • Le librerie di quadranti orologio sono prima Kotlin e utilizzano coroutine (ad esempio le funzioni di sospensione). Per gli utenti Java, abbiamo messo a disposizione degli utenti di FollowableFuture gli involucri per migliorare l'interoperabilità nelle seguenti librerie: wear/wear-watchface-guava, wear/wear-watchface-client-guava e wear/wear-watchface-editor-guava.

Modifiche alle API

  • Abbiamo rimosso il supporto per i doppi tocchi sulle complicazioni del lancio del selettore provider. Questa funzionalità non era comune nei quadranti e complicava l'implementazione di SysUI. (I3ef24)
  • I metodi ProviderInfoRetriever possono restituire ServiceDisconnettiedException se il binder si chiude in modo imprevisto. (Ib2cc4)
  • A partire da Android 11, sono presenti limitazioni relative al momento in cui è possibile eseguire ProviderChooser; inoltre, vorremmo che gli editor utilizzino il nuovo wear-watchface-editor per far sì che ComplicationHelperActivity venga rimosso dall'API pubblica. (Ib19c1)
  • Rimuovi i metodi statici di ComplicationText a favore degli strumenti per la creazione. (Ibe399)
  • Abbiamo introdotto i wrapper guavaListenableFuture per i vari metodi di sospensione della libreria di quadranti. (I16b2c)
  • Per chiarezza, abbiamo aggiunto a RenderParameters un costruttore secondario che non richiede una tinta, da utilizzare con LayerModes diversi da LayerMode.DRAW_OUTLINED. (I497ea)
  • In precedenza, ListUserStyleSetting era diversa dall'altra perché aveva un argomento predefinito. Ora tutti i costruttori delle sottoclassi StyleSetting usano per ultimo il valore predefinito. (I9dbfd)
  • È stato eseguito il refactoring di CanvasComplication in modo da utilizzare un metodo nascosto, che semplifica l'implementazione di una sottoclasse (I5b321)
  • Abbiamo eseguito il refactoring di EditorResult a favore di un nuovo EditorService e di EditorSession.broadcastState() per trasmettere gli aggiornamenti in streaming a un osservatore (in genere SysUI). (Ic4370)
  • Alcuni quadranti sono realizzati intorno a una particolare complicazione e costituiscono parte integrante del quadrante in cui il fornitore non è configurabile dall'utente. A supporto di ciò, abbiamo aggiunto Complication.Builder#setFixedComplicationProvider. (I4509e)
  • EditorRequest ora specifica il nome del pacchetto anziché ComponenteName perché per SysUI risultava scomodo cercare il nome della classe dell'editor e in realtà ci serve solo il nome del pacchetto. (Ib6814)

Versione 1.0.0-alpha07

10 febbraio 2021

androidx.wear:wear-*:1.0.0-alpha07 viene rilasciato. La versione 1.0.0-alpha07 contiene questi commit.

Nuove funzionalità

  • WatchFaceService.createWatchFace è ora una funzione di sospensione, il che significa che il quadrante non deve più bloccare il thread dell'interfaccia utente durante l'attesa dell'IO. Analogamente, indossa-editor-quadrante-orologio-dati-complicazioni-usura

Modifiche alle API

  • Rimuovi la classe PhotoImage e usa direttamente Icona. (I8a70b)
  • Esponi il valore validTimeRange di ComplicationData. (I91366)
  • Rendere più espliciti gli attributi simili a quelli delle immagini. (I81700)
  • wear-watch-face-editor e wear-complications-data sono stati sottoposti a refactoring per utilizzare le funzioni di sospensione al posto delle coroutine. Rx java & Future wrapper compatibili da seguire. (If3c5f)
  • ProviderInfoRetriever ora restituisce PreviewNotAvailableException se requestPreviewComplicationData non può restituire dati di anteprima a causa di problemi di connessione o della mancanza di supporto API. (I4964d)
  • WatchFaceControlService::createWatchFaceControlClient è ora una funzione sospesa e getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient ora si chiama getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClientAsync che restituisce Deferred<InteractiveWatchFaceWcsClient>. RX Java e Future wrapper compatibili da seguire. (I5d461)
  • Rinomina CATEGORY_PROVIDER_CONFIG_ACTION in CATEGORY_PROVIDER_CONFIG. (I7c068)
  • Tieni presente che createOnWatchEditingSession ora è una funzione sospesa perché il quadrante a volte non è disponibile fino a poco dopo l'inizio dell'attività dell'editor. (Ida9aa)
  • WatchFaceService.createWatchFace è ora una funzione di sospensione che consente l'inizializzazione asincrona, in precedenza dovevi bloccare il thread principale. (If076a)
  • UserStyle ora dispone di un operatore array e abbiamo aggiunto gli assistenti di trasmissione a UserStyle.Option. (I35036)
  • Abbiamo corretto un bug di marshalling relativo ai cavi UserStyle che modificano alcune delle API nascoste instabili. (I8be09)
  • Abbiamo aggiunto CustomValueUserStyleSetting che ti consente di archiviare una singola stringa specifica dell'applicazione in uno UserStyle. Gli editor predefiniti dei quadranti ignoreranno questo valore. (Ic04d2)
  • L'ID istanza non viene inserito negli intent extra per R e versioni precedenti di Android WearOS di cui non possiamo eseguire l'upgrade. A supporto di ciò, ora consentiamo il valore InstancID null. (Id8b78)
  • EditorRequest ora include l'editor ComponenteName, che è impostato come componente in WatchFaceEditorContract.createIntent (I3cd06)
  • L'EditorResult del quadrante ora include un'anteprima di ComplicationData per consentire al chiamante di acquisire uno screenshot del quadrante dopo la modifica. (I2c561)

Correzioni di bug

  • L'aggiunta di valori toString() a UserStyle, UserStyleSetting e UserStyleSchema rende un po' più efficiente l'utilizzo di queste classi. (I9f5ec).

Versione 1.0.0-alpha06

27 gennaio 2021

androidx.wear:wear-*:1.0.0-alpha06 viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.

Nuove funzionalità

  • Abbiamo introdotto un nuovo editor per i quadranti orologio e per la libreria, che consente agli sviluppatori di quadranti orologio e potenzialmente agli OEM di creare un editor di stile e complicazioni. SysUI invierà un intent al quadrante che utilizzerà la nuova classe EditorSession per accedere ai dettagli del quadrante e registrare il risultato tramite Activity.setWatchRequestResult. A supporto di ciò, abbiamo aggiunto ProviderInfoRetriever.requestPreviewComplicationData che consente agli editor dei quadranti di richiedere l'anteprima ComplicationData. Il vantaggio dell'anteprima di ComplicationData è che, diversamente dai dati in tempo reale, non devi preoccuparti di mostrare finestre di dialogo di autorizzazione quando esegui il rendering dell'editor (nota se un utente seleziona un provider con un'autorizzazione, gli verrà comunque chiesto di concedere l'autorizzazione).

Modifiche alle API

  • Ora il parametro ComplicationProviderInfo ha un campo per ComponenteName del provider; il supporto per questo campo verrà aggiunto a WearOS in un secondo momento e nel frattempo sarà nullo. (Id8fc4)
  • Abbiamo aggiunto ProviderInfoRetriever.requestPreviewComplicationData che consente agli editor dei quadranti di richiedere l'anteprima di ComplicationData. Ciò è utile perché le complicazioni in tempo reale potrebbero richiedere autorizzazioni e ora puoi visualizzare i dati di anteprima per le complicazioni non attive. (I2e1df)
  • Ora ComplicationManager è un parametro facoltativo del costruttore WatchFace e gli argomenti sono stati riordinati per consentire questa operazione. (I66c76)
  • Abbiamo aggiunto alle complicazioni un bundle facoltativo che, se impostato, viene unito all'intent inviato per avviare l'attività del selettore del provider. (Ifd4ad)
  • Abbiamo aggiunto una nuova libreria wear-watchface-editor per supportare gli editor ospitati su quadranti e sistemi SysUi. SysUI lancerà questi editor inviando un intent. Il servizio relativo all'attività dei quadranti può utilizzare la nuova classe EditorSession per accedere ai dettagli del quadrante e registrare il risultato tramite Activity.setWatchRequestResult. (I2110d)
  • LayerMode.DRAW_HIGHLightED ora si chiama LayerMode.DRAW_OUTLINED e RenderParameters.highlightComplicationId ora si chiama RenderParameters.selectedComplicationId che mette in evidenza la complicazione specificata oltre a un contorno. (I90a40)
  • Il futuro di WatchFaceControlClient.getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient può ora risolversi con un'eccezione ServiceStartFailureException se il servizio si arresta in attesa della creazione del quadrante. (I0f509)
  • EditorSession.complicationPreviewData è ora un AscoltaableFuture perché il recupero di questi dati è un processo asincrono. (Iead9d)

Correzioni di bug

  • Stiamo rimuovendo i campi inutilizzati da ComplicationOverlay lasciando attivati e complicationBounds. (I17b71)

Versione 1.0.0-alpha05

13 gennaio 2021

androidx.wear:wear-*:1.0.0-alpha05 viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.

Nuove funzionalità

I quadranti spesso supportano una serie di configurazioni di complicazioni con un numero variabile di complicazioni mostrate. Per semplificare la configurazione, ora supportiamo le complicazioni inizialmente disabilitate chiamando setEnabled(false) sul builder. Queste impostazioni possono essere attivate in un secondo momento tramite ComplicationsUserStyleSetting.

Modifiche alle API

  • ComplicationHelperActivity ora accetta Collection<ComplicationType> anziché un array int che lo rende più facile da usare. (I1f13d)
  • ProviderInfoRetriever.retrieveProviderInfo ora restituisce correttamente ListenableFuture<ProviderInfo[]>. (If2710)
  • Ora puoi creare una complicazione inizialmente disattivata chiamando setEnabled(false) nel generatore. (Idaa53)
  • WatchFaceState ora ha una proprietà isHeadless che è vera solo per le istanze headless. (Ifa900)
  • Opzionalmente, ComplicationDrawable supporta ora il caricamento sincrono dei disegnabili. Questo viene utilizzato dalle API per gli screenshot. (I34d4a)

Versione 1.0.0-alpha04

16 dicembre 2020

androidx.wear:wear-*:1.0.0-alpha04 viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

Nuove funzionalità

  • La raccolta di quadranti Wear ora supporta l'impostazione dei limiti per tipo. Ad esempio, puoi passare a un riquadro di delimitazione largo per ComplicationType.LONG_TEXT utilizzando un riquadro di delimitazione più piccolo per altri tipi.

Modifiche alle API

  • Ora le complicazioni utilizzano ComplicationBounds che aggrega un Map<ComplicationType, RectF> per supportare le dimensioni per tipo di complicazione. (I1ebe7)
  • RenderParameters ora consente di specificare la tinta delle alte luci da utilizzare negli screenshot. (Iff42b)
  • Ad eccezione dei limiti, ora devi usare ComplicationsUserStyleSetting per modificare le complicazioni, in modo da garantire che il sistema operativo venga mantenuto sincronizzato. (I8dc5d)
  • Il renderer è ora una classe limitata. Ciò significa che CanvasRenderer e GlesRenderer sono ora classi interne del renderer. (Iab5d4, b/173803230)
  • La funzionalità CanvasComplicationDrawable.drawHighlight è stata rinominata in pullOutline. Ora ObservableWatchData ha alcune annotazioni UiThread mancanti. ScreenState è stato ora completamente rimosso da WatchState. (If1393)
  • Il livello API minimo per il quadrante orologio è ora 25. Tieni presente che il supporto della canvas hardware richiede il livello API 26 o versioni successive. (Ic9bbd)
  • InteractiveWatchFaceWcsClient ora dispone di un helper getComplicationIdAt. (I05811)
  • Il livello API per il client per il quadrante orologio è stato ridotto a 25, tuttavia le API degli screenshot richiedono il livello API 27. (Id31c2)

Correzioni di bug

  • Ora viene mostrato il ComplicationData attuale della complicazione in ComplicationState. (I9b390)
  • InteractiveWatchFaceWcs ora ha un metodo "bringAttentionToComplication per evidenziare brevemente la complicazione specificata. (I6d31c)
  • InteractiveWatchFaceWcsClient#setUserStyle ora ha un sovraccarico che accetta Map<string, string=""> che può potenzialmente evitare un ulteriore round trip IPC necessario per creare UserStyle. (I24eec)</string,>

Versione 1.0.0-alpha03

2 dicembre 2020

androidx.wear:wear-*:1.0.0-alpha03 viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.

Nuove funzionalità

La classe di complicazioni ora dispone di una proprietà compicationData che consente ai quadranti di osservare le modifiche di ComplicationData. Ciò consente di modificare le dimensioni della complicazione in base al tipo.

Le frequenze fotogrammi variabili sono ora supportate mediante l'assegnazione a Renderer.interactiveDrawModeUpdateDelayMillis. Per i quadranti che eseguono brevi animazioni ogni secondo, questo può portare a un buon risparmio energetico se attivi la modalità di sospensione quando non attivi l'animazione.

Modifiche alle API

  • BACKGROUND_IMAGE è stato rinominato in PHOTO_IMAGE insieme alle classi correlate. Questo tipo di complicazione non viene utilizzato esclusivamente per gli sfondi, quindi la modifica del nome. (I995c6)
  • Valore predefinitoComplicationProviderPolicy correttamente annotato con IntDefs. (I3b431)
  • La classe TimeDependentText nascosta non è più esposta tramite ContentDescriptionLabel. Aggiungiamo invece una funzione di accesso per ottenere il testo in un orario specificato. (Ica692)
  • Il costruttore di ObservableWatchData è ora interno. (I30121, b/173802666)
  • La complicazione ora include compicationData che consente ai quadranti di osservare le modifiche apportate a ComplicationData. La complicazione include anche una nuova chiamata isActiveAt che può essere utilizzata per stabilire se deve essere eseguito il rendering alla data/ora specificata. (Ic0e2a)
  • Il campo SharedMemoryImage vuoto non si trova più nell'API pubblica. (I7ee17)
  • WatchFace.overridePreviewReferenceTimeMillis ora ha un'annotazione IntRange e getter e setter hanno nomi coerenti. (Ia5f78)
  • Ora il file Complication.Builder viene creato tramite Complication.createRoundRectComplicationBuilder o Complication.createBackgroundComplicationBuilder per maggiore chiarezza (I54063)
  • È stato aggiunto WatchFace.TapListener che consente di osservare i tocchi non consumati da complicazioni da parte del quadrante orologio. (Ic2fe1, b/172721168)
  • WatchFace ora supporta frequenze fotogrammi variabili assegnandole a Renderer.interactiveDrawModeUpdateDelayMillis. Questo può contribuire a preservare la durata della batteria disattivando la modalità quando non attivi l'animazione. (I707c9)
  • WatchFace.Builder non è più necessario e invalidate() e interattiviUpdateRateMillis sono stati spostati nel renderer. (I329ea)
  • Per una migliore interoperabilità Java rinominata getter per le proprietà booleane in WatchState (I6d2f1)
  • TapListener è stato rinominato in TapCallback e InvalidateCallback in InvalidateListener per coerenza. (I9414e)
  • Le opzioni per lo stile del quadrante Wear 2.0 sono state spostate in un proprio classe per una maggiore chiarezza. I setter WatchFace.Builder ora hanno getter simmetrici delle classi WatchFace. (Iefdfc)
  • Sono stati aggiunti InteractiveWatchFaceWcsClient e WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient, che ricevono un'istanza esistente o la crea una volta che il servizio wallaper ha connesso e reso il motore. (Id666e)
  • WatchFaceControlClient è ora un'interfaccia che consente ai test di simulare il video. (I875d9)
  • HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl e InteractiveWatchFaceWcsClient, ora sono interfacce per semplificare i test. (I7cdc3)
  • Annotazioni aggiunte ai metodi in wear-watchface-complications-rendering (I0d65c)

Correzioni di bug

  • Rimuovi la forma dello schermo da DeviceConfig, che stava duplicando android.content.res.Configuration#isScreenRound() (Ifadf4)
  • Il valore WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient è stato modificato in modo che accetti un Map<String, String> invece di UserStyle perché è difficile creare una UserStyle senza conoscere lo schema, che puoi ottenere solo dopo la creazione del client. (Iea02a)
  • Correggi InteractiveWatchFaceWcsClient per utilizzare ComplicationState al posto del formato con cavo. (Icb8a4)
  • UserStyleSettings è ora una classe bloccata perché gli editor dei quadranti comprendono solo le classi integrate. (I2d797)

Versione 1.0.0-alpha02

11 novembre 2020

androidx.wear:wear-*:1.0.0-alpha02 viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.

Modifiche alle API

  • Il nome di ComplicationDetails ora è ComplicationState ed è stato aggregato correttamente ed è stato eseguito la migrazione degli utilizzi del supporto indossabile @ComplicationData.ComplicationType ad Androidx ComplicationType. (I4dd36)
  • Aggiungi un parametro highlightedComplicationId facoltativo a RenderParameters che ti consente di richiedere l'evidenziazione di una singola complicazione negli screenshot. (I66ce9)
  • ComplicationProviderService per utilizzare la nuova API per le complicazioni dello stile per garantire la coerenza (Id5aea)
  • getPreviewReferenceTimeMillis ora riceve i tempi di riferimento da DeviceConfig. (I779fe)
  • Per semplificare la superficie dell'API Renderer, è possibile usare invece SurfaceHolder.Callback per osservare le modifiche. (I210db)
  • CanvasComplicationRenderer non si estende da Renderer, rinominandolo per maggiore chiarezza. (Ibe880)

Correzioni di bug

  • Prima versione di androidx.wear:wear-watchface-client (I1e35e)
  • Nome GlesTextureComplication#renderer modificato per maggiore chiarezza (Ib78f7)
  • Rinomina StyleCategory in StyleSetting per maggiore chiarezza (I488c7)
  • Aggiunta di UserStyleSchema per un'API più pulita (If36f8)

Versione 1.0.0-alpha01

28 ottobre 2020

androidx.wear:wear-complications-*:1.0.0-alpha01 e androidx.wear:wear-watchface-*:1.0.0-alpha01 vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.

Modifiche alle API

  • Sono state rimosse alcune cose che non intendevamo esporre nell'API pubblica. (I41669)
  • Crea libreria androidx.wear:wear-complications-provider. (I77f1f)
  • ComplicationsUserStyleCategory la nuova categoria consigliata per la configurazione delle complicazioni (I96909)
  • Aggiungi l'API wear-complication-data. (I7c268)
  • Funzioni con valori restituiti booleani da inserire come prefisso "is" anziché "get" (If36ff)
  • Il consiglio dell'API è di evitare l'uso di Protected, quindi questa classe è stata sottoposta a refactoring per accettare i parametri tramite il costruttore. (I61644)
  • Rinomina setBackgroundComplication per maggiore chiarezza. (I96fe3).
  • Utilizza le proprietà Kotlin per ComplicationDrawable isHighlighted & data (I4dcc8)
  • Al posto di ComplicationRenderer.InvalidateCallback, aggiungiamo Complication#invalidate() (I4f4c6)
  • Queste API sono in fase di ritiro in WearableSupport e vengono rimosse qui. (Ib425c)
  • Ha rinominato alcuni metodi dello strumento per la creazione di quadranti orologio per enfatizzare la loro natura legacy di Wear 2.0. (Idb775)
  • Prima candidata API beta per il quadrante orologio indossabile (Id3981)
  • Prima versione monitorata dell'API. (Ie9fe6)
  • Nascondendo correttamente ComplicationDrawable.BorderStyle IntDef e passare a ComplicationStyle per coerenza. (I27f7a)
  • Aggiunta di annotazioni mancanti per i metodi ComplicationStyle (I838fd)
  • Questa libreria non ha una piattaforma API pubblica (I88e2b)
  • Tutte le classi Opzione della categoria di stile ora sono correttamente definitive. (Ib8323)
  • Prima versione monitorata dell'API. (I27c85)

Correzioni di bug

  • È stato modificato ComplicationProviderService in modo da avere un metodo getComplicationPreviewData esplicito. (I4905f)
  • Il controllo lint dell'API per MissingGetterMatchingBuilder è abilitato per androidx (I4bbea, b/138602561)
  • Rinomina rendering-complicazione-usura. (Ifea02)
  • I nomi visualizzati delle categorie di stile sono ora CharSequences (I28990)
  • È stato sostituito Override con Overlay in base alle convenzioni di denominazione correnti per temi e stili. (I4fde9)
  • È stato rinominato UserStyle#getOptions per maggiore chiarezza. (I695b6)

Versione 1.2.0

Versione 1.2.0

15 settembre 2021

androidx.wear:wear:1.2.0 viene rilasciato. La versione 1.2.0 contiene questi commit.

Modifiche importanti dalla versione 1.1.0

  • Aggiunto il componente CurvedText per scrivere facilmente testo curvo che segue la curvatura del cerchio più grande che può essere inscritto nella vista. Esempio di utilizzo:

    <androidx.wear.widget.CurvedText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="example curved text"
            app:anchorAngleDegrees="180"
            app:anchorPosition="center"
            app:clockwise="false"
            style="@android:style/TextAppearance.Large"
    />
    

    Esempio di testo curvo in Android Wear

  • Aggiunto il contenitore ArcLayout per il layout degli elementi figlio uno alla volta su un arco in senso orario o antiorario. I relativi elementi secondari possono essere sia widget Android standard sia widget "curvi" che implementano l'interfaccia ArcLayout.Widget. (I536da) Esempio di utilizzo:

    <androidx.wear.widget.ArcLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:anchorPosition="center">
          <ImageView
                  android:layout_width="20dp"
                  android:layout_height="20dp"
                  android:src="@drawable/ic_launcher"
          />
          <androidx.wear.widget.CurvedText
                  android:layout_width="match_parent"
                  android:layout_height="match_parent"
                  android:text="Curved Text"
                  style="@android:style/TextAppearance.Small"
                  android:padding="2dp"
           />
      </androidx.wear.widget.WearArcLayout>
    

    Esempio di testo con struttura in Android Wear

  • È stato aggiunto un nuovo contenitore di layout, IgnoraibleFrameLayout, che gestisce l'eliminazione del pulsante Indietro e/o la funzionalità di scorrimento per ignorare, destinato a essere utilizzato nell'ambito di un'attività. Per poter intervenire in seguito a un'azione di eliminazione, devi aggiungere almeno un listener. In genere, un listener rimuove una vista contenitore o un frammento dall'attività corrente. setScorriIgnoraible(boolean) e setBackButtonamentil(boolean) per il controllo diretto sulle funzionalità. Questo nuovo layout ha lo scopo di sostituire il layout SwipeDeployFrameLayout esistente.

  • Aggiunto il supporto per indicare che un'attività può essere "ripristinata automaticamente" quando il dispositivo esce dalla modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata di WearableSupportLibrary. (I336ab)

  • È stata eseguita la migrazione della classe WearableCalendarContract dalla libreria di supporto Wearable. Questa API fornisce un sottoinsieme dei dati disponibili tramite CalendarContract, ma viene sincronizzato automaticamente con i dispositivi indossabili. (I6f2d7)

  • È stata aggiunta una nuova API WearTypeHelper in androidx.wear.utils per determinare se il dispositivo di usura specificato è per la Cina. (Ib01a9)

  • Sono state aggiunte funzioni di accessibilità a androidx.wear.widget.ConfirmationOverlay che leggeranno ad alta voce i messaggi, se impostati, seguiti dalla descrizione dell'animazione. (I524dd)

  • È stato risolto il bug che causava l'arresto anomalo di ConfirmationActivity se non veniva fornito alcun messaggio. (IE6055)

  • È stato corretto il bug per cui gli elementi RecyclerView a scorrimento orizzontale causavano la visualizzazione di WearableDrawerLayout in tutte le interazioni. (I24c7f)

Versione 1.2.0-rc01

1° settembre 2021

androidx.wear:wear:1.2.0-rc01 viene rilasciato senza modifiche dall'ultima versione beta. La versione 1.2.0-rc01 contiene questi commit.

Versione 1.2.0-beta01

18 agosto 2021

androidx.wear:wear:1.2.0-beta01 viene rilasciato. La versione 1.2.0-beta01 contiene questi commit.

Correzioni di bug

  • Risolvi il bug che causava l'arresto anomalo di ConfirmationActivity se non era stato fornito alcun messaggio. (IE6055)

Versione 1.2.0-alpha13

4 agosto 2021

androidx.wear:wear:1.2.0-alpha13 viene rilasciato. La versione 1.2.0-alpha13 contiene questi commit.

Modifiche alle API

  • Rinominato WearTypeHelper.isChinaDevice in WearTypeHelper.isChinaBuild. (I47302)

Correzioni di bug

  • Abbiamo aggiunto funzioni di accessibilità a androidx.wear.widget.ConfirmationOverlay che leggono ad alta voce i messaggi, se impostati, seguiti dalla descrizione dell'animazione. (I524dd)

Versione 1.2.0-alpha12

21 luglio 2021

androidx.wear:wear:1.2.0-alpha12 viene rilasciato. La versione 1.2.0-alpha12 contiene questi commit.

Modifiche alle API

  • Abbiamo aggiunto una nuova API WearTypeHelper in androidx.wear.utils per determinare se il dispositivo indossabile è destinato alla Cina. (Ib01a9)

Versione 1.2.0-alpha11

30 giugno 2021

androidx.wear:wear:1.2.0-alpha11 viene rilasciato. La versione 1.2.0-alpha11 contiene questi commit.

Correzioni di bug

  • È stato corretto il bug per cui gli elementi RecyclerView a scorrimento orizzontale causavano la visualizzazione di WearableDrawerLayout in tutte le interazioni. (I24c7f)

Versione 1.2.0-alpha10

2 giugno 2021

androidx.wear:wear:1.2.0-alpha10 viene rilasciato. La versione 1.2.0-alpha10 contiene questi commit.

Nuove funzionalità

  • Alpha10 migliora il supporto dell'accessibilità in Curved Text e ArcLayouts. Inoltre, viene aggiunto un piccolo ridenominazione al campo IgnoraibleFrameLayout per chiarire l'API.

Modifiche alle API

  • Abbiamo rinominato i seguenti metodi in DismissibleFrameLayout (Ib195e):
    • Callback#onDismissed -> Callback#onDismissedFinished
    • isSwipeDismissible -> isDismissableBySwipe
    • isBackButtonDismissible -> isDismissableByBackButton
  • I seguenti metodi sono stati finalizzati (Ib195e):
    • setBackButtonDismissible
    • setSwipeDismissible
    • registerCallback
    • unregisterCallback

Correzioni di bug

  • Utilizza i contenuti di CurvedTextView su TalkBack. (I05798)
  • Migliore accessibilità per le viste normali in un ArcLayout. (I4418d)

Versione 1.2.0-alpha09

18 maggio 2021

androidx.wear:wear:1.2.0-alpha09 viene rilasciato. La versione 1.2.0-alpha09 contiene questi commit.

Modifiche alle API

  • È stata aggiunta una nuova funzione CurvedTextView.setTypeface() (simile a quella di TextView) per impostare lo stile del tipo di testo e del grassetto/corsivo. (I4653c)
  • Rinominato WearArcLayout in ArcLayout, WearCurvedText in CurvedText e WearArcLayout.ArcLayoutWidget in ArcLayout.Widget. (I6e5ce)
    • Il giorno ArcLayout.Widget, getThicknessPx è stato rinominato getThickness.
    • Le costanti di allineamento verticale su ArcLayout.LayoutParams hanno ora il nome che inizia con VERTICAL_ALIGN_ (anziché le precedenti VALIGN_)
  • Il giorno CurvedTextView, i metodi setMinSweepDegrees e setMaxSweepDegrees sono stati sostituiti da setSweepRangeDegrees (I7a9d9)

Versione 1.2.0-alpha08

5 maggio 2021

androidx.wear:wear:1.2.0-alpha08 viene rilasciato. La versione 1.2.0-alpha08 contiene questi commit.

Modifiche alle API

  • Per migliorare la chiarezza del codice, abbiamo aggiunto le annotazioni @FloatRange ad alcuni parametri angolari e tipi restituiti. (I430dd)
  • Nell'interfaccia WearArcLayout.ArcLayoutWidget, il metodo insideClickArea ora si chiama isPointInsideClickArea. (Ia7307)

Versione 1.2.0-alpha07

24 marzo 2021

androidx.wear:wear:1.2.0-alpha07 viene rilasciato. La versione 1.2.0-alpha07 contiene questi commit.

Correzioni di bug

  • Correzione degli errori relativi a elementi secondari non curvi all'interno di WearArcLayout causati dall'utilizzo di dimensioni dello schermo con altezza superiore alla larghezza. Questi bambini non curvi ora sono posizionati correttamente all'interno di un arco su tutti i tipi di schermo.

Versione 1.2.0-alpha06

27 gennaio 2021

androidx.wear:wear:1.2.0-alpha06 viene rilasciato. La versione 1.2.0-alpha06 contiene questi commit.

Modifiche alle API

  • Esegui la migrazione della libreria Attività in corso in una nuova libreria secondaria: Wear onboarding. I corsi ora sono disponibili nel pacchetto androidx.wear.onGoing (in precedenza androidx.wear.onGoingactivity) (I7c029)
  • Esegui la migrazione della classe WearableCalendarContract da Wearable Support Library ad AndroidX. Questa API fornisce un sottoinsieme dei dati disponibili tramite CalendarContract, ma viene sincronizzato automaticamente con i dispositivi indossabili. (I6f2d7)

Correzioni di bug

  • Disattiva per impostazione predefinita la funzionalità per ignorare il pulsante Indietro in Layout frame ignorabile perché la funzionalità scorri per ignorare rimane il metodo principale per tornare indietro a una modalità a schermo intero sui dispositivi indossabili (Ic24e3)
  • Risolti alcuni problemi relativi alla gestione della visibilità dei bambini su WearArcLayout (Icf912)

Versione 1.2.0-alpha05

13 gennaio 2021

androidx.wear:wear:1.2.0-alpha05 viene rilasciato. La versione 1.2.0-alpha05 contiene questi commit.

Correzioni di bug

  • Aggiorna il codice javadoc della classe AmbientModeSupport per fornire snippet di esempio per dimostrare meglio l'uso generale di questa classe.

Versione 1.2.0-alpha04

16 dicembre 2020

androidx.wear:wear:1.2.0-alpha04 viene rilasciato. La versione 1.2.0-alpha04 contiene questi commit.

Modifiche alle API

  • Aggiunto il supporto per indicare che un'attività può essere "ripristinata automaticamente" quando il dispositivo esce dalla modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata di WearableSupportLibrary. (I336ab)
  • Attività in corso
    • Ora è possibile impostare la categoria durante la creazione di un'attività Attivo, ad esempio OngoingActivitiy.Builder.getCategory(String)
    • Il timestamp di OnGoingActivityData ora ha un timestamp che indica quando è stata creata la risorsa OnGoingActivity: OngoingActivityData.getTimestamp()
    • (I91cb4)
  • È stato aggiunto il supporto dell'impostazione dei margini sugli elementi secondari di WearArcLayout modificando i parametri di layout in modo da estendere MarginLayoutParams, ad esempio WearArcLayout.LayoutParams estende android.view.ViewGroup.MarginLayoutParams. (I2cd88)
  • Modifica il tipo di ancoraggio di WearCurvedTextView predefinito su WearArcLayout.ANCHOR_CENTER (era WearArcLayout.ANCHOR_START). Questo semplifica il contratto tra il layout ad arco e il testo curvo poiché per impostazione predefinita il testo curvo viene disegnato al centro dell'asse X nella parte superiore e il layout dell'arco principale può ruotarlo dove necessario. (I105ff)

Versione 1.2.0-alpha03

2 dicembre 2020

androidx.wear:wear:1.2.0-alpha03 viene rilasciato. La versione 1.2.0-alpha03 contiene questi commit.

Nuove funzionalità

Un nuovo contenitore di layout IgnoraibleFrameLayout, che gestisce l'eliminazione del pulsante Indietro e/o la funzionalità di scorrimento per ignorare, destinato all'uso nell'ambito di un'attività. Per poter intervenire in seguito a un'azione di eliminazione, devi aggiungere almeno un listener. In genere, un listener rimuove una vista contenitore o un frammento dall'attività corrente. setScorriIgnoraible(boolean) e setBackButtonamentil(boolean) per il controllo diretto sulle funzionalità. Questo nuovo layout ha lo scopo di sostituire il layout SwipeDeployFrameLayout esistente.

I widget curvi ora gestiscono gli eventi di tocco. I widget normali all'interno di WearArcLayout riceveranno tutti gli eventi di tocco, mappati allo spazio delle coordinate. WearCurvedTextView (all'interno o meno di WearArcLayout) può impostare i gestori GCE e onLongClick.

Le classi di attività in corso sono ora VersiondParcelables anziché utilizzare la serializzazione/deserializzazione personalizzata. Ora sono obbligatori l'icona statica e l'intent touch.

Modifiche alle API

  • L'attributo "sweepDegrees" per WearCurvedTextView è separato in minSweepDegrees e maxSweepDegrees per dare un layout più flessibile di questo widget.

Versione 1.2.0-alpha02

11 novembre 2020

androidx.wear:wear:1.2.0-alpha02 viene rilasciato. La versione 1.2.0-alpha02 contiene questi commit.

In questa release è stata aggiunta per la prima volta una nuova "API OnGoing Activities". Questa API può essere utilizzata dagli sviluppatori per segnalare che è in corso un'attività di lunga durata, come un allenamento di fitness o una sessione di riproduzione di contenuti multimediali. Consente agli sviluppatori di fornire aggiornamenti periodici dello stato, ad esempio "distanza e tempo di corsa" o "tracciamento corrente" da visualizzare sul quadrante o in Avvio app. Questa funzionalità è destinata a dispositivi futuri su cui è attivata la funzionalità relativa all'attività in corso.

Modifiche alle API

  • Nuova API per le attività in corso, una soluzione autonoma sui "dispositivi non supportati". (I69a31)

Versione 1.2.0-alpha01

28 ottobre 2020

androidx.wear:wear:1.2.0-alpha01 viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Aggiunto il componente WearCurvedTextView per scrivere facilmente testo curvo che segue la curvatura del cerchio più grande che può essere inscritto nella vista. Esempio di utilizzo:
<androidx.wear.widget.WearCurvedTextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="example curved text"
        app:anchorAngleDegrees="180"
        app:anchorPosition="center"
        app:clockwise="false"
        style="@android:style/TextAppearance.Large"
/>

Esempio di testo curvo in Android Wear

  • Aggiunto il contenitore WearArcLayout per il layout degli elementi secondari uno alla volta su un arco in senso orario o antiorario. I relativi elementi secondari possono essere sia widget Android standard sia widget "curvi" che implementano l'interfaccia ArcLayoutWidget. Esempio di utilizzo:
<androidx.wear.widget.WearArcLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:anchorPosition="center">
      <ImageView
              android:layout_width="20dp"
              android:layout_height="20dp"
              android:src="@drawable/ic_launcher"
      />
      <androidx.wear.widget.WearCurvedTextView
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:text="Curved Text"
              style="@android:style/TextAppearance.Small"
              android:padding="2dp"
       />
  </androidx.wear.widget.WearArcLayout>

Esempio di testo con struttura in Android Wear

(I536da)

Wear-Input 1.2

Versione 1.2.0-alpha02

29 settembre 2021

androidx.wear:wear-input:1.2.0-alpha02 e androidx.wear:wear-input-testing:1.2.0-alpha02 vengono rilasciati. La versione 1.2.0-alpha02 contiene questi commit.

Modifiche alle API

  • Il nome disallowEmoji è stato cambiato in setEmojisAllowed in WearableRemoteInputExtender per impostare se mostrare o meno l'opzione per disegnare le emoji. (I28393)

Versione 1.2.0-alpha01

15 settembre 2021

androidx.wear:wear-input:1.2.0-alpha01 e androidx.wear:wear-input-testing:1.2.0-alpha01 vengono rilasciati. La versione 1.2.0-alpha01 contiene questi commit.

Modifiche alle API

  • Tutte le costanti di posizione dei pulsanti esposte dal giorno WearableButtons. (Ibb12c)
  • È stata aggiunta la classe WearableRemoteInputExtender che può essere utilizzata per aggiungere extra specifici per Wear ad android.app.RemoteInput. (I01903)

Wear-Input 1.1.0

Versione 1.1.0

18 agosto 2021

androidx.wear:wear-input:1.1.0 e androidx.wear:wear-input-testing:1.1.0 vengono rilasciati. La versione 1.1.0 contiene questi commit.

Modifiche importanti dalla versione 1.0.0

  • RemoteInputIntentHelper aggiunto.
    • Questa classe può essere utilizzata per creare un intent RemoteInput. che può essere utilizzata per richiedere input agli utenti in un'attività personalizzabile.

Versione 1.1.0-rc01

4 agosto 2021

androidx.wear:wear-input:1.1.0-rc01 e androidx.wear:wear-input-testing:1.1.0-rc01 vengono rilasciati. La versione 1.1.0-rc01 contiene questi commit.

Nessuna modifica all'API da androidx.wear:wear-input:1.1.0-beta01 e androidx.wear:wear-input-testing:1.1.0-beta01

Versione 1.1.0-beta01

21 luglio 2021

androidx.wear:wear-input:1.1.0-beta01 e androidx.wear:wear-input-testing:1.1.0-beta01 vengono rilasciati senza modifiche dal giorno 1.1.0-alpha03. La versione 1.1.0-beta01 contiene questi commit.

Versione 1.1.0-alpha03

30 giugno 2021

androidx.wear:wear-input:1.1.0-alpha03 e androidx.wear:wear-input-testing:1.1.0-alpha03 vengono rilasciati. La versione 1.1.0-alpha03 contiene questi commit.

Correzioni di bug

  • È stato corretto il bug a causa del quale gli intent RemoteInput, a cui erano stati aggiunti RemoteInput tramite RemoteInputHelper.putRemoteInputsExtra, venivano rifiutati.

Versione 1.1.0-alpha02

18 maggio 2021

androidx.wear:wear-input:1.1.0-alpha02 e androidx.wear:wear-input-testing:1.1.0-alpha02 vengono rilasciati. La versione 1.1.0-alpha02 contiene questi commit.

Modifiche alle API

  • I metodi di RemoteInputIntentHelper usati per ottenere o aggiungere extra che rappresentano le etichette Titolo, Annulla, Conferma e In corso ora utilizzano CharSequence anziché String per queste etichette. (I0e71f)

Versione 1.1.0-alpha01

27 gennaio 2021

androidx.wear:wear-input:1.1.0-alpha01 e androidx.wear:wear-input-testing:1.1.0-alpha01 vengono rilasciati. La versione 1.1.0-alpha01 contiene questi commit.

Modifiche alle API

  • Esegui la migrazione della classe RemoteInputIntent da Wearable Support Library ad AndroidX. La classe migrata viene rinominata RemoteInputIntentHelper, che fornisce funzioni helper per supportare gli input remoti attraverso l'avvio di un intent. (I47cee)

Wear-Input 1.0.0

Versione 1.0.0

2 dicembre 2020

androidx.wear:wear-input:1.0.0 e androidx.wear:wear-input-testing:1.0.0 vengono rilasciati. La versione 1.0.0 contiene questi commit.

Questa release è identica a 1.0.0-rc01.

Funzionalità principali della versione 1.0.0

  • Migrazione della funzionalità WearableButtons dalla Raccolta di assistenza per i dispositivi indossabili a Jetpack.

  • È stato aggiunto androidx.wear.input.test.TestWearableButtonsProvider che implementa androidx.wear.input.WearableButtonsProvider per aiutare le applicazioni di test sviluppate con la libreria androidx.wear:wear-input.

Versione 1.0.0-rc01

11 novembre 2020

androidx.wear:wear-input:1.0.0-rc01 e androidx.wear:wear-input-testing:1.0.0-rc01 vengono rilasciati. La versione 1.0.0-rc01 contiene questi commit.

Questa release è identica a 1.0.0-beta01.

Versione 1.0.0-beta01

28 ottobre 2020

androidx.wear:wear-input:1.0.0-beta01 e androidx.wear:wear-input-testing:1.0.0-beta01 vengono rilasciati senza modifiche dal giorno 1.1.0-alpha01. La versione 1.0.0-beta01 contiene questi commit.

Wear-Input-Testing versione 1.0.0-alpha01

14 ottobre 2020

androidx.wear:wear-input-testing:1.0.0-alpha01 viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Modifiche alle API

  • È stato aggiunto androidx.wear.input.test.TestWearableButtonsProvider che implementa androidx.wear.input.WearableButtonsProvider per aiutare le applicazioni di test sviluppate con la libreria androidx.wear:wear-input. (I0ed0c)

Wear-Input versione 1.0.0-alpha01

2 settembre 2020

androidx.wear:wear-input:1.0.0-alpha01 viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Nuove funzionalità

Migrazione della funzionalità WearableButtons dalla Raccolta di assistenza per i dispositivi indossabili a Jetpack. Nella libreria androidx.wear:wear-input-testing della prossima release di Jetpack verrà fornito un ulteriore supporto per i test.

Versione 1.1.0

Versione 1.1.0

14 ottobre 2020

androidx.wear:wear:1.1.0 viene rilasciato. La versione 1.1.0 contiene questi commit.

Modifiche importanti dalla versione 1.0.0

  • È stato aggiunto un prefisso layout_ all'attributo boxedEdges (ora layout_BoxedEdges) per BoxInsetLayout al fine di rispettare la convenzione di denominazione Android. In questo modo rimuoverai l'errore linter in Android Studio per questi attributi. (I4272f)
  • È stato aggiunto il criterio EXTRA_ANIMATION_DURATION_MILLIS facoltativo a ConfirmationActivity per consentire l'intervallo di tempo durante il quale viene visualizzata la finestra di dialogo di conferma. (adb83ce, b/143356547)
  • Aggiornato WearableActionDrawView per ritardare il gonfiaggio del riquadro a scomparsa delle azioni fino alla prima apertura del riquadro a scomparsa. (I01026, b/163870541)

Versione 1.1.0-rc03

2 settembre 2020

androidx.wear:wear:1.1.0-rc03 viene rilasciato. La versione 1.1.0-rc03 contiene questi commit.

Correzioni di bug

  • È stato risolto il problema a causa del quale il riquadro a scomparsa azioni non mostrava i contenuti all'apertura. (I01026, b/163870541)

Versione 1.1.0-rc02

24 giugno 2020

androidx.wear:wear:1.1.0-rc02 viene rilasciato. La versione 1.1.0-rc02 contiene questi commit.

Correzioni di bug

  • È stato aggiunto un prefisso layout_ all'attributo boxedEdges (ora layout_boxedEdges) per BoxInsetLayout al fine di rispettare la convenzione di denominazione Android. In questo modo rimuoverai l'errore linter in Android Studio per questi attributi.

Versione 1.1.0-rc01

14 maggio 2020

androidx.wear:wear:1.1.0-rc01 viene rilasciato senza modifiche dal giorno .1.0-beta01. La versione 1.1.0-rc01 contiene questi commit.

Versione 1.1.0-beta01

29 aprile 2020

androidx.wear:wear:1.1.0-beta01 viene rilasciato senza modifiche dal giorno androidx.wear:wear:1.1.0-alpha01. La versione 1.3.0-beta01 contiene questi commit.

Versione 1.1.0-alpha01

15 aprile 2020

androidx.wear:wear:1.1.0-alpha01 viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.

Modifiche alle API

  • È stato aggiunto il criterio EXTRA_ANIMATION_DURATION_MILLIS facoltativo a ConfirmationActivity per consentire l'intervallo di tempo durante il quale viene visualizzata la finestra di dialogo di conferma. (adb83ce, 134523c, b/143356547)

Correzioni di bug

  • Aggiornato WearableActionDrawView per ritardare il gonfiaggio del riquadro a scomparsa delle azioni fino alla prima apertura del riquadro a scomparsa. (5cd32f7)