Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(Consulta i documenti di riferimento per tutti i pacchetti di abbigliamento)
Questa tabella elenca tutti gli elementi del gruppo androidx.wear
.
Elemento | Release stabile | Candidato per l'uscita | Versione beta | Release alpha |
---|---|---|---|---|
wear | 1.3.0 | - | - | 1.4.0-alpha01 |
wear-input | 1.1.0 | - | - | 1.2.0-alpha02 |
test-usura-input | 1.1.0 | - | - | 1.2.0-alpha02 |
uso continuo | 1.0.0 | - | - | 1.1.0-alpha01 |
interazioni-wear-smartphone | 1.0.1 | - | - | 1.1.0-alpha04 |
indossa interazioni-remote | 1.0.0 | - | 1.1.0-beta01 | - |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza su Wear, devi aggiungere il Repository Maven di Google al tuo progetto. Consulta il Repository Maven di Google per ulteriori informazioni.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Alla moda
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 saperne di più sulle dipendenze, consulta Aggiungere dipendenze build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Non esitare a contattarci in caso di nuovi problemi o idee per migliorare questa raccolta. Dai un'occhiata alle problemi esistenti in questa raccolta, prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente tramite facendo clic sul pulsante a forma di stella.
Consulta la documentazione di Issue Tracker per ulteriori informazioni.
Wear Core versione 1.0
Versione 1.0.0-alpha01
29 maggio 2024
Viene rilasciato androidx.wear:wear-core:1.0.0-alpha01
. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- È stata aggiunta una nuova classe
WearApiVersionhelper
per facilitare il controllo della compatibilità delle API di runtime su Wear. I client possono utilizzare questa classe helper statica e il metodo fornito (#isApiVersionAtLeast(VERSION)
) per verificare la compatibilità.
Anteprima di Wear Tooling versione 1.0
Versione 1.0.0
29 novembre 2023
Viene rilasciato androidx.wear:wear-tooling-preview:1.0.0
. La versione 1.0.0 contiene questi commit.
Funzionalità nella versione 1.0.0
- Aggiungi
WearDevices
per elencare i dispositivi indossabili validi che possono essere utilizzati per le anteprime dell'interfaccia utente.
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
Viene rilasciato androidx.wear:wear-tooling-preview:1.0.0-alpha01
. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- Aggiungi
WearDevices
all'elenco dei dispositivi indossabili validi che possono essere utilizzati per le anteprime dell'interfaccia utente (Ib036e)
Wear versione 1.4
Versione 1.4.0-alpha01
15 novembre 2023
Viene rilasciato androidx.wear:wear:1.4.0-alpha01
. La versione 1.4.0-alpha01 contiene questi commit.
Correzioni di bug
- Centra l'icona
ConfirmationOverlay
verticalmente quando non ci sono messaggi. (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 utilizzareLifecycleObserver
. RitiraAmbientModeSupport
per favorire le nuove classi sensibili al ciclo di vita. - Aggiorna
ConfirmationOverlay
con nuove icone/layout, caratteri e metriche relative ai caratteri SwipeDismissTransitionHelper
aggiornato per utilizzare un drawable in background anziché un secondoView
per correggere gli errori quando si usaFragmentContainerView
- Animazione
SwipeDismissFrameLayout
aggiornata per garantire la coerenza con le implementazioni della piattaforma Wear e di Wear Compose. - Correzione di bug di
SwipeDismissFrameLayout
per evitare la chiusura accidentale di frammenti con un'inclinazione verticale ArcLayout
ora supporta le ponderazioni di espansione, che funzionano in modo simile ai normali pesi del layout.- Sostieni
layoutDirection
suArcLayout
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
Viene rilasciato androidx.wear:wear:1.3.0-beta01
. La versione 1.3.0-beta01 contiene questi commit.
Modifiche alle API
- Aggiornamento di
AmbientLifecycleObserver
in seguito al feedback.AmbientLifecycleObserverInterface
è stato rinominato inAmbientLifecycleObserver
e puoi ottenere un'istanza chiamandoAmbientLifecycleObserver(...)
.isAmbient
è stato spostato come campo anziché come metodo. (I84b4f)
Correzioni di bug
- Aggiunta di controlli null per gestire i casi in cui la vista principale è nullo durante la reimpostazione di alpha e traduzione in
SwipeToDismiss
. (Ib0ec7).
Versione 1.3.0-alpha05
19 aprile 2023
Viene rilasciato androidx.wear:wear:1.3.0-alpha05
. La versione 1.3.0-alpha05 contiene questi commit.
Modifiche alle API
- Esegui la migrazione di
AmbientModeSupport
per utilizzareLifecycleObserver
. RitiraAmbientModeSupport
a favore delle nuove classi sensibili al ciclo di vita. (I1593b)
Correzioni di bug
- Aggiorna l'approccio per la scansione in background di
SwipeDismissTransitionHelper
per utilizzare gli elementi drawable anziché aggiungere una vista per correggere gli errori durante l'utilizzo diFragmentContainerView
. (I851cd)
Versione 1.3.0-alpha04
25 gennaio 2023
Viene rilasciato androidx.wear:wear:1.3.0-alpha04
. 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 Wear Compose. (I7261b)
Versione 1.3.0-alpha03
24 agosto 2022
Viene rilasciato androidx.wear:wear:1.3.0-alpha03
. La versione 1.3.0-alpha03 contiene questi commit.
Nuove funzionalità
ArcLayout
ora supporta le ponderazioni di espansione, che funzionano in modo simile ai normali pesi del layout. Ciò significa che puoi specificare la dimensione relativa degli elementi secondari senza doverne calcolare direttamente gli angoli. Abbiamo anche aggiunto un criterioMaxAngleDegrees
che viene rispettato quando si espandono gli elementi secondari con ponderazioni. Ad es. puoi bloccare l'arco con diversi elementi secondari con pesi a 90 gradi, in questo modo viene rispettato anche lo spazio occupato da qualsiasi elemento non espanso.
Modifiche alle API
- Abbiamo aggiunto un peso a
ArcLayout.LayoutParams
per consentire a un widget di espandersi per riempire lo spazio disponibile. Se c'è più di un widget, la loro quota di spazio disponibile è proporzionale al loro peso. Inoltre, abbiamo aggiuntoArcLayout.setMaxAngleDegrees
in modo che tu possa, ad esempio, limitare l'espansione a 90 gradi (nota che ciò non influisce sul layout dei widget secondari di dimensioni fisse). Infine,ArcLayout.Widget
ora includesetSweepAngleDegrees
, che consente aArcLayout
di informare un widget con una ponderazione diversa da zero delle sue dimensioni. (I75f24) - Nulla aggiornato di
setColorFilter
(I99ddf, b/236498063)
Versione 1.3.0-alpha02
23 febbraio 2022
Viene rilasciato androidx.wear:wear:1.3.0-alpha02
. La versione 1.3.0-alpha02 contiene questi commit.
Nuove funzionalità
- Supporta
layoutDirection
suArcLayout
(I14d49) - Messaggio di descrizione dei contenuti migliorato per ConfirmationOverlay (I0fdf8)
- Aggiorna
ConfirmationOverlay
con nuove icone/layout. (If5b54).
Correzioni di bug
- Aggiunta di regole ProGuard per garantire la conservazione del codice relativo all'ambiente (Idaa10)
- Evita la chiusura accidentale dei frammenti in swipeFunnelLayout con un'inclinazione verticale (Idb6d8)
- Correggi l'overlay di conferma in assenza di messaggi (I63e6f)
Contributo esterno
- Dae Gyu LEE (Samsung) - Evitare la chiusura accidentale dei frammenti nel layout SwipelidFrame con un'inclinazione verticale (Idb6d8)
Versione 1.3.0-alpha01
29 settembre 2021
Viene rilasciato androidx.wear:wear:1.3.0-alpha01
. La versione 1.3.0-alpha01 contiene questi commit.
Correzioni di bug
ConfirmationOverlay
ora spinge l'icona verso l'alto per ospitare messaggi più lunghi, senza che il messaggio entri nella mascherina del dispositivo (o fuori schermo). (I54bff)
Indossa in movimento e Versione 1.1.0 per le interazioni
Versione 1.1.0-beta01
24 luglio 2024
Viene rilasciato androidx.wear:wear-remote-interactions:1.1.0-beta01
. La versione 1.1.0-beta01 contiene questi commit. La versione 1.3.0-beta01 delle interazioni remote Wear indica che questa release della libreria è completa di funzionalità e l'API è bloccata (tranne se contrassegnata come sperimentale).
Versione 1.1.0-alpha04
10 gennaio 2024
Viene rilasciato androidx.wear:wear-phone-interactions:1.1.0-alpha04
. La versione 1.1.0-alpha04 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
RemoteAuthClient.isRemoteAuthAvailable
che controlla se è disponibile l'autenticazione remota. (Ibc10c)
Versione 1.1.0-alpha02
10 gennaio 2024
Viene rilasciato androidx.wear:wear-remote-interactions:1.1.0-alpha02
. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
RemoteActivityHelper.isRemoteActivityHelperAvailable
, che aiuta a verificare se è disponibile la funzionalità per avviare un'attività remota. (I107a9) - Abbiamo aggiornato il costruttore di
RemoteActivityHelper
in modo che sia compatibile con un parametro facoltativo in Java. (I75554)
Versione 1.1.0-alpha01
21 giu 2023
Viene rilasciato androidx.wear:wear-remote-interactions:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Correzioni di bug
- È stato migliorato il modo in cui vengono eseguiti i completamenti e la gestione degli errori in
RemoteActivityHelper
. (I60d60)
Contributo esterno
- Rimuovi la dipendenza Guava da
wear-remote-interactions
e utilizza alternative più piccole.
Wear-Phone-Interactions versione 1.1.0-alpha03
9 marzo 2022
Viene rilasciato androidx.wear:wear-phone-interactions:1.1.0-alpha03
. La versione 1.1.0-alpha03 contiene questi commit.
Correzioni di bug
redirectUrl
daOAuthRequest
ora restituisce una stringa vuota se l'URL di reindirizzamento non è impostato nell'URL della richiesta specificato. (I44242)
Wear-Phone-Interactions versione 1.1.0-alpha02
15 dicembre 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.1.0-alpha02
. La versione 1.1.0-alpha02 contiene questi commit.
Correzioni di bug
- Correggi gli errori nella documentazione
RemoteAuthClient
, inclusi l'errore nello snippet di codice di esempio e il link obsoleto aErrorCode
(I260e8)
Wear-Phone-Interactions versione 1.1.0-alpha01
15 settembre 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
Indossa in movimento e Versione 1.0.0 interazioni
Wear-Phone-Interactions versione 1.0.1
15 dicembre 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.0.1
. La versione 1.0.1 contiene questi commit.
Correzioni di bug
- È stata generata un'eccezione corretta da
BridgingManager
durante il tentativo di disattivare le notifiche di collegamento senzaexcludedTags
.
Wear-Phone-Interactions Wear-Remote-Interactions Versione 1.0.0
15 settembre 2021
Vengono rilasciate le versioni androidx.wear:wear-phone-interactions:1.0.0
e androidx.wear:wear-remote-interactions:1.0.0
. La versione 1.0.0 contiene questi commit.
Funzionalità principali di 1.0.0
La libreria delle interazioni telefoniche contiene le API per le interazioni dagli indossabili agli smartphone. Contiene quanto segue:
PhoneDeviceType
, che fornisce metodi di supporto per determinare il tipo di smartphone con cui è accoppiato l'orologio corrente, per l'uso solo su dispositivi indossabili.- API
BridgingManager
,BridgingManagerService
eBridgingConfig
per attivare/disattivare le notifiche in fase di runtime e, facoltativamente, impostare i tag per le notifiche esenti dalla modalità ponte. RemoteAuthClient
, che fornisce il supporto per l'autenticazione remota sugli indossabili e il supporto per l'aggiunta dell'estensione OAuth PKCE. Vengono forniti gestori e classi helper aggiuntivi per la comunicazione.
La libreria delle interazioni remote contiene le API per le interazioni tra indossabili e smartphone. 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'app complementare sullo smartphone.- Classe
RemoteActivityHelper
che può essere utilizzata per aprire intent su altri dispositivi (ad es. da orologio a smartphone).
Wear-Phone-Interactions Wear-Remote-Interactions Versione 1.0.0-rc01
1° settembre 2021
Vengono rilasciate le versioni androidx.wear:wear-phone-interactions:1.0.0-rc01
e androidx.wear:wear-remote-interactions:1.0.0-rc01
. La versione 1.0.0-rc01 contiene questi commit.
Correzioni di bug
- Correzione di un bug che impediva la propagazione al chiamante degli errori generati in Google Play Services durante l'utilizzo di RemoteActivityHelper (I60d60)
- Correzione del bug per cui RemoteActivityHelper non avrebbe mai completato il suo Future se non ci fossero nodi connessi o se il nodeId richiesto non era stato trovato (I60d60)
Wear-On Playing 1.1
Versione 1.1.0-alpha01
23 agosto 2023
Viene rilasciato androidx.wear:wear-ongoing:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
- Aggiungi un campo per la descrizione dei contenuti all'attività in corso. Verrà utilizzato dai servizi di accessibilità per descrivere l'Attività in corso. (I79fc6)
Correzioni di bug
- È stato aggiunto
@RequiresPermission
alle API che richiedono la concessione dell'autorizzazionePOST_NOTIFICATIONS
su SDK 33 e versioni successive. (Ie542e, b/238790278)
Wear-On Playing versione 1.0.0
1° settembre 2021
Viene rilasciato androidx.wear:wear-ongoing:1.0.0
. La versione 1.0.0 contiene questi commit.
Funzionalità principali di 1.0.0
- L'API Wear Onstanding Activity è un'API per sviluppatori, inclusi sviluppatori di terze parti, utilizzata per contrassegnare la loro attività come "Attività continua" e fornire le informazioni necessarie.
- Per attività in corso si intendono attività che potrebbero essere eseguite in background sullo smartwatch (ad esempio, esercizi, chiamate e contenuti multimediali). Su Wear 3, un'attività dichiarata in corso verrà resa più in evidenza tramite un'icona di overlay dedicata sul quadrante e un rendering diverso in Avvio app.
- Per ulteriori informazioni, vedi la Guida all'attività in corso.
Wear-Phone-Interactions Wear-Remote-Interactions Versione 1.0.0-beta01
18 agosto 2021
Vengono rilasciate le versioni androidx.wear:wear-phone-interactions:1.0.0-beta01
e androidx.wear:wear-remote-interactions:1.0.0-beta01
. La versione 1.0.0-beta01 contiene questi commit.
Modifiche alle API
- Il corso
RemoteIntentHelper
è stato rinominato inRemoteActivityHelper
. Le funzioniRemoteIntentHelper#getRemoteIntentExtraIntent
eRemoteIntentHelper#getRemoteIntentNodeId
sono state rinominate rispettivamenteRemoteActivityHelper#getTargetIntent
eRemoteActivityHelper#getTargetNodeId
. (ID2042)
Wear-OnVai versione 1.0.0-rc01
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.
Wear-OnVai versione 1.0.0-beta01
4 agosto 2021
Viene rilasciato androidx.wear:wear-ongoing:1.0.0-beta01
. La versione 1.0.0-beta01 contiene questi commit.
Modifiche alle API
- Alcuni utenti che impostano su OnVaiActivity.Builder ora accettano un nullo per fornire simmetria e coerenza al setter e getter (I17ee5)
Wear-Phone-Interactions versione 1.0.0-alpha07
4 agosto 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.0.0-alpha07
. La versione 1.0.0-alpha07 contiene questi commit.
Modifiche alle API
WearTypeHelper.isChinaDevice
rinominato inWearTypeHelper.isChinaBuild
. (I47302)- Abbiamo aggiornato la libreria RemoteAuthClient in modo che venga selezionato automaticamente Redirect_uri in base al tipo di dispositivo (RoW/Cina). (I38866)
- È stato corretto il bug che causava la mancata riuscita della conversione di BridgingConfig in/da bundle con ClassCastEccezione. Sono stati aggiunti i test delle unità per la classe BridgingManagerService. (I68ecb)
Wear-Remote-Interactions versione 1.0.0-alpha06
4 agosto 2021
Viene rilasciato androidx.wear:wear-remote-interactions:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Wear-Phone-Interactions versione 1.0.0-alpha06
21 luglio 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- La classe
BridgingManagerSeviceBinder
è ora una sottoclasse di servizio 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 su cui eseguire il callback. (I35e11).
Correzioni di bug
- Abbiamo reso l'API di autenticazione più chiara con parametri più documentati e utilizzando proprietà ove possibile. (I12287)
Wear-Phone-Interactions versione 1.0.0-alpha05
30 giugno 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.0.0-alpha05
. La versione 1.0.0-alpha05 contiene questi commit.
Correzioni di bug
- Parametri documentati che devono essere passati nel costruttore per
BridgingConfig.Builder
.
Wear-On Playing versione 1.0.0-alpha06
2 giugno 2021
Viene rilasciato androidx.wear:wear-ongoing:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- Aggiungi il campo Titolo all'Attività in corso. (I7a405)
Correzioni di bug
SerializationHelper.copy()
ora esegue una copia difensiva della di informazioni (I8b276)- Documentazione di setCategory migliorata (Iff01f)
Wear-On Playing versione 1.0.0-alpha05
18 maggio 2021
Viene rilasciato androidx.wear:wear-ongoing:1.0.0-alpha05
. 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)- Il nuovo corso
Status
viene ora utilizzato per creare lo stato delOngoingActivity
OngoingActivityData
eOngoingActivityStatus
non fanno più parte dell'API pubblica.
- Il nuovo corso
I corsi
TextStatusPart
eTimerStatusPart
non fanno più parte dell'API pubblica. (I57fb6)- Per creare una
Part
con un testo statico, utilizzaStatus.TextPart
. - Per creare un
Part
con un cronometro (conteggiando in ordine), usaStatus.Stopwatch
- Per creare un
Part
con un timer (conto alla rovescia), usaStatus.Timer
- Per creare una
Wear-On Playing versione 1.0.0-alpha04
5 maggio 2021
Viene rilasciato androidx.wear:wear-ongoing:1.0.0-alpha04
. La versione 1.0.0-alpha04 contiene questi commit.
Modifiche alle API
- Su OnAndingActivity, i metodi fromexistingOnVaiActivity ora sono chiamati recoveryOnVaiActivity.
- OnendingActivity ora ha un set completo di getter, gli stessi precedentemente disponibili solo su OnendingActivityData. (I0ee4d)
Wear-Remote-Interactions versione 1.0.0-alpha05
21 luglio 2021
Viene rilasciato androidx.wear:wear-remote-interactions:1.0.0-alpha05
. La versione 1.0.0-alpha05 contiene questi commit.
Modifiche alle API
Abbiamo aggiunto la classe
RemoteIntentHelper
(in precedenza RemoteIntent nella libreria di supporto Wearable) che può essere utilizzata per aprire intent su altri dispositivi (ad esempio da smartwatch a smartphone). (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 determinare se il telefono connesso è uno smartphone Android. Dopodiché utilizza il metodoandroidx.wear.utils.WearTypeHelper.isChinaDevice
per determinare se il telefono connesso è un dispositivo cinese. Se il telefono è uno smartphone Android e se non è un dispositivo cinese, sarà disponibile il Play Store. (Ie7dec)
Wear-Phone-Interactions versione 1.0.0-alpha04
7 aprile 2021
Viene rilasciato androidx.wear:wear-phone-interactions:1.0.0-alpha04
. 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 con l'implementazione nella libreria di assistenza Wearable.
Correzioni di bug
- Eccezione corretta causata dall'avvio di una sessione OAuth della nuova API OAuth.
Wear-Remote-Interactions versione 1.0.0-alpha03
7 aprile 2021
Viene rilasciato androidx.wear:wear-remote-interactions:1.0.0-alpha03
. 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
che mostrava correttamente il codice di esempio con caratteri HTML effettivi.
Wear-Onending Wear-Phone-Interactions Versione 1.0.0-alpha03
10 marzo 2021
Vengono rilasciate le versioni androidx.wear:wear-ongoing:1.0.0-alpha03
e androidx.wear:wear-phone-interactions:1.0.0-alpha03
. 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 è stata rinominata RemoteAuthClient e offre supporto per l'autenticazione remota sugli indossabili e per l'aggiunta dell'estensione OAuth PKCE. Vengono forniti gestori e classi helper aggiuntivi per la comunicazione.
- Ora le attività in corso possono essere associate a una Notification che ha un tag utilizzando il nuovo costruttore OnVaiActivity.Builder.
Modifiche alle API
- Aggiunto il supporto per i tag di notifica nelle attività in corso Raccolta (I653b4)
- Esegui la migrazione di OAuthClient dalla libreria di assistenza Wear ad AndroidX e aggiungi il supporto per l'estensione OAuth PKCE (I3eaaa)
Wear-Remote-Interactions versione 1.0.0-alpha02
10 marzo 2021
Viene rilasciato androidx.wear:wear-remote-interactions:1.0.0-alpha02
. 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 sullo smartphone.
Correzioni di bug
- Migrazione della classe PlayStoreavailability da Libreria di supporto per dispositivi indossabili su AndroidX. (I69bfe)
Versione 1.0.0-alpha02
10 febbraio 2021
Vengono rilasciate le versioni androidx.wear:wear-ongoing:1.0.0-alpha02
e androidx.wear:wear-phone-interactions:1.0.0-alpha02
. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
- È stato aggiunto il supporto per uno stato più complesso. Sono composte da un modello (o più) e una serie di parti che verranno utilizzate per riempire segnaposto del modello. OnendingActivityStatus 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 assistenza Wear ad AndroidX, che fornisce le API per attivare/disattivare le notifiche in fase di runtime e, se vuoi, impostare i tag per le notifiche esenti dalla modalità ponte. (I3a17e).
Versione 1.0.0-alpha01
27 gennaio 2021
Vengono rilasciate le funzionalità 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
. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
Esegui la migrazione della libreria Attività in corso a una nuova libreria secondaria: wear-onContinua. Ora le lezioni si trovano nel pacchetto androidx.wear.onrunning (in precedenza era androidx.wear.onrunningactivities) (I7c029)
Crea una nuova libreria di supporto per contenere i corsi che supportano le interazioni dagli indossabili ai telefoni. Inizialmente, include i corsi di cui è stata eseguita la migrazione dalla libreria di supporto per gli 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 con cui è accoppiato l'orologio corrente, per l'utilizzo solo su dispositivi indossabili. (Ibd947)
Crea una nuova libreria di supporto che contenga corsi che supportano le interazioni tra indossabili e telefoni. Inizialmente, include i corsi di cui è stata eseguita la migrazione dalla libreria di supporto per gli 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'app complementare sullo smartphone. Può anche essere utilizzata localmente per configurare il quadrante sul dispositivo indossabile. (Ia455f)
Complicazioni e quadrante di Wear 1.0.0
Versione 1.0.0-alpha22
15 settembre 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha22
. La versione 1.0.0-alpha22 contiene questi commit.
Nuove funzionalità
- La EditorSession ora si abbona agli osservatori del ciclo di vita, così non devi più chiuderla esplicitamente quando la tua attività scompare.
Modifiche alle API
- EditorSession e ListenableEditorSession ora utilizzano kotlin StateFlows percomplicaonSlotsState, ComplicationsPreviewData e ComplicationsDataSourceInfo. (I761d9)
- EditorSession#userStyle è ora
MutableStateFlow<UserStyle>
(I32ca9) - EditorSession.createOnWatchEditorSession ora utilizza un osservatore del ciclo di vita e si chiude automaticamente quando osserva onDestroy. Inoltre,
createOnWatchEditorSession
ora richiede solo la trasmissione dell'attività. Modifiche identiche sono state applicate anche a ListenableEditorSession. (Ic6b7f) - Il costruttore di CustomValueUserStyleSetting è stato reintegrato nell'API pubblica. (I2e69a).
UserStyle
ora eredita daMap<UserStyleSetting, UserStyleSetting.Option>
eMutableUserStyleSetting#put
genera un'eccezione adsenseArgumentException se l'impostazione non è nello schema o se l'opzione non corrisponde all'impostazione. (Iba40f)
Versione 1.0.0-alpha21
1° settembre 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha21
. La versione 1.0.0-alpha21 contiene questi commit.
Modifiche alle API
- Tutte le API pubbliche per i quadranti, i client, gli editor e le complicazioni ora utilizzano java.time.Instance anziché Long, di conseguenza il livello API minimo è salito a 26. (I3cd48)
- Il quadrante orologio e le API di complicazione ora utilizzano l'immutabile ZonedDateTime anziché Calendar. (I25cf8)
- I ComplicationSlots sono ora inizializzati con NoDataComplicationData, ComplicationSlot.complicationData ora ha sempre un valore e CanvasComplicationDrawable.complicationData non è più annullabile. (I4dfd6) Questo riduce (ma non elimina) lo sfarfallio delle complicazioni quando si passa da un quadrante all'altro.
Versione 1.0.0-alpha20
18 agosto 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha20
. La versione 1.0.0-alpha20 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto createFallbackPreviewData a ComplicationDataSourceInfo, che può essere utilizzata quando ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData restituisce null. (I38c4d)
- ComplicationDataSourceUpdateRequester è stato trasformato in un'interfaccia per consentire la simulazione nei test delle unità. Puoi costruire un ComplicationDataSourceUpdateRequester concreto con ComplicationDataSourceUpdateRequester.create(). (I7da22).
- RenderParameters.pressComplicationSlotIds è stata sostituita da RenderParameters.lastComplicationTapdownEvents che espone la nuova classe TapEvent che contiene una tripla delle coordinate x e y del tocco in pixel e un timestamp.
WatchFace.TapListener.onTap
è stato sostituito daonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
. Inoltre, l'opzioneInteractiveWatchFaceClient.displayPressedAnimation
è stata rimossa. (ID87d2) - È stata aggiunta un'annotazione esplicita relativa ai thread per setImportantForAccessibility (I990fa)
- ComplicationSlotBoundsType è stato spostato nel quadrante orologio androidx-wear.ComplicationSlotBoundsType nel quadrante indossabile/usura. (I09420)
- Abbiamo aggiunto il supporto per il passaggio degli ID risorsa di stringa in UserStyleSetting e Opzioni. Questo è il modo consigliato per creare questi oggetti. (I03d5f)
- Sono stati imposti dei limiti alla dimensione massima dei cavi di uno schema UserStyle. Inoltre, le icone dello schema non devono essere più grandi di 400 x 400 pixel. (I3b65b).
- È stata aggiunta una classe MutableUserStyle per supportare le modifiche alle istanze UserStyle (I95a40)
- Abbiamo rinominato
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
inListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
. (I64ce2). - Abbiamo modificato EditorState.previewComplicationsData in modo che contenga solo i dati per le complicazioni attivate e abbiamo aggiunto
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
che, se passati arenderWatchFaceToBitmap
oPreviewScreenshotParams
, richiedono il rendering con il tempo di anteprima predefinito del quadrante. (If7b3c). - Abbiamo rimosso i costruttori UserStyleSetting che prendono CharSequence dall'API pubblica. Si consiglia di utilizzare invece i costruttori che richiedono gli ID StringResource. (I8537b)
CurrentUserStyleRepository.UserStyleChangeListener
ora supporta la conversione da SAM. (I85989)
Versione 1.0.0-alpha19
4 agosto 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha19
. La versione 1.0.0-alpha19 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient
che fornisce un wrapperListenableFuture
perWatchFaceMetadataClient.createWatchFaceMetadataClient
. (I5fa37) UserStyleOption.getOptionForId
ora accettaUserStyleOption.Id
anziché un array di byte. (I469be)- Fornisci le costanti
BooleanOption.TRUE
eBooleanOption.FALSE
e non consentire la creazione delle istanze (I46e09) - I metodi in wear-watchface-client che possono generare RemoteEccezioni sono stati annotati di conseguenza. (Ib8438)
- Per coerenza abbiamo rinominato
EditorSession.createOnWatchEditingSession
increateOnWatchEditorSession
. Allo stesso modo,createHeadlessEditingSession
ora ècreateHeadlessEditorSession
. Anche i loro involtini di guava sono stati rinominati. (I1526b) EditorSession
ora è un'interfaccia eListenableEditorSession.commitChangesOnClose
è ora correttamente delegato. (I7dc3e)- Ora rifiutiamo qualsiasi schema di stile utente con impostazioni o opzioni con ID in conflitto (Ic2715)
- Abbiamo aggiunto un
UserStyle.get
con sovraccarico che accettaUserStyleSetting.Id
. (I2aa0f)
Versione 1.0.0-alpha18
21 luglio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha18
. La versione 1.0.0-alpha18 contiene questi commit.
Modifiche alle API
- Abbiamo spostato
ComplicationHelperActivity
inandroidx.wear:wear-watchface
raccolta. (I39e76). - Per coerenza e chiarezza,
ComplicationProvider
è stato rinominato inComplicationDataSource
e tutte le classi con il nome Provider a loro nome sono state rinominate in modo simile. (Iaef0b) CanvasComplication.isHighlighted
è stato spostato inRenderParameters.pressedComplicationSlotIds
. Questo è un passo per rendereCanvasComplication
stateless. Per supportare questa modifica,CanvasComplication.render
ora prende anche ilslotId
come parametro e ora passiamo ilComplicationSlot
inGlesTextureComplication
. (I50e6e)- Abbiamo aggiunto
headlessDeviceConfig
aEditorRequest
. Se il valore è diverso da null, questo parametro viene utilizzato per creare un'istanza headless in supporto della EditorSession anziché agire sull'istanza interattiva. In questo modo è possibile richiamare l'editor per un quadrante diverso da quello attuale. (I0a820) - Abbiamo aggiunto un
WatchFaceMetadataClient
sperimentale che consente il recupero efficiente dei metadati statici del quadrante, comeUserStyleSchema
e dettagli corretti suComplicationSlots
. (I6bfdf) - Abbiamo rinominato
CanvasRenderer.uiThreadInit
in init. (I6fff9) - Abbiamo aggiunto PreviewScreenshotParams un nuovo parametro facoltativo per EditorRequest che indica a EditorSession di acquisire uno screenshot di anteprima al momento del commit con questo parametro. L'immagine di anteprima è esposta il giorno
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
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha17
. La versione 1.0.0-alpha17 contiene questi commit.
Nuove funzionalità
In
GlesRenderer
,makeUiThreadContextCurrent
emakeBackgroundThreadContextCurrent
sono stati sostituiti darunUiThreadGlCommands
erunBackgroundThreadGlCommands
che accettano entrambiRunnable
. La libreria garantisce che in un dato momento sia in esecuzione un solo comando GL eseguibile.Per semplificare l'inizializzazione di UiThread, abbiamo aggiunto
CanvasRenderer.uiThreadInit
, che viene chiamato una sola volta sull'UiThread prima di qualsiasi chiamata di cui eseguire il rendering. Abbiamo anche aggiuntoonRendererCreated
aCanvasComplication
per semplificare la condivisione dello stato perRenderer
eCanvasComplication
.Per chiarezza abbiamo rinominato
Complication
inComplicationSlot
ecomplicationId
incomplicationSlotId
ocomplicationInstanceId
a seconda dell'utilizzo
Modifiche alle API
- Per maggiore chiarezza, abbiamo rinominato
Complication
inComplicationSlot
ecomplicationId
incomplicationSlotId
ocomplicationInstanceId
, a seconda dell'utilizzo. Allo stesso modo, anche le classi che usano Complication sono state rinominate, ad es. ComplicationsManager si chiama ora ComplicationSlotsManager. (I4da44) - In GlesRenderer
makeUiThreadContextCurrent
emakeBackgroundThreadContextCurrent
sono stati sostituiti darunUiThreadGlCommands
erunBackgroundThreadGlCommands
, che accettano entrambiRunnable
. Queste funzioni sono necessarie solo se devi effettuare chiamate GL al di fuori di rendering,runBackgroundThreadGlCommands
eonUiThreadGlSurfaceCreated
. Questa operazione è necessaria perché nello stesso processo possono esserci più GlesRenderer, ognuno con i propri contesti, potenzialmente da quadranti diversi. Inoltre, ora è sincronizzato l'accesso al contesto GL attuale condiviso. (I04d59) - Abbiamo aggiunto
CanvasRenderer.uiThreadInit
, che viene chiamato una volta sull'UiThread prima di qualsiasi chiamata di rendering. Sempre per chiarezza in GlesRenderer abbiamo rinominatoonGlContextCreated
inonBackgroundThreadGlContextCreated
eonGlSurfaceCreated
inonUiThreadGlSurfaceCreated
. (If86d0). HeadlessWatchFaceClient
eInteractiveWatchFaceClient
getComplicationsSlotState
è stato rinominato ingetComplicationSlotsState
. InComplicationSlot
:createRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
ecreateEdgeComplicationBuilder
sono stati rinominati rispettivamente increateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
ecreateEdgeComplicationSlotBuilder
. (Ib9adc)- Abbiamo aggiunto onRendererCreated a CanvasComplication per semplificare la condivisione dello stato per Renderer e CanvasComplication. (I5e1ac).
Versione 1.0.0-alpha16
16 giugno 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha16
. La versione 1.0.0-alpha16 contiene questi commit.
Nuove funzionalità
- Abbiamo corretto una serie di bug relativi alle recenti modifiche al modello di thread e alla risoluzione di altri problemi relativi all'editor dei quadranti sul quadrante.
Correzioni di bug
- Impedisci NPE in
onComplicationProviderChooserResult
(b/189594557) - Risolvere i problemi relativi a superfici obsolete e drawBlack (b/189452267)
- Correggi la corsa durante l'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 pre-R (b/189126313)
- Non aggiornare i parametri di avvio diretto per le modifiche dello stile dell'editor (b/187177307)
Versione 1.0.0-alpha15
2 giugno 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha15
. 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, ma dopo aver caricato tutto il rendering del quadrante e così via viene eseguito sull'UiThread. C'è una barriera di memoria tra il caricamento e il rendering, quindi la maggior parte dei quadranti utente non deve fare nulla di speciale. L'utilizzo dei quadranti con GLES potrebbe essere un'eccezione perché il contesto è specifico per i thread e creiamo due contesti collegati in modo da poter caricare risorse GL (ad es. texture e tonalità) sul thread in background e utilizzarle sull'UiThread.
Abbiamo suddiviso la costruzione dei quadranti in tre funzioni: createUserStyleSchema, createComplicationsManager e createWatchFace. Partiamo dal presupposto che createUserStyleSchema e createComplicationsManager siano veloci e createWatchFace potrebbe richiedere del tempo per caricare gli asset. A questo scopo, abbiamo introdotto WatchFaceControlClient.getDefaultProviderPoliciesAndType
, che restituisce una mappa degli ID Complication a DefaultComplicationProviderPolicies e al valore predefinito ComplicationType. 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 ora vengono create con CanvasComplication Fabbrica, che consente la creazione lazy 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 Complication a DefaultComplicationProviderPolicies e al valore predefinito di ComplicationType. Ove possibile, viene utilizzato un percorso veloce che evita la creazione completa di un quadrante. Per facilitare questa operazione, l'API WatchFaceService ha dovuto cambiare con due nuovi metodi: createUserStyleSchema e createComplicationsManager, i cui risultati vengono passati in createWatchFace. Inoltre, le complicazioni ora vengono create con CanvasComplication Fabbrica, che consente la creazione lazy dei renderer CanvasComplication. (Iad6c1) - Abbiamo rimosso MOST_RECENT_APP da SystemProviders. (I3df00)
- ObservableWatchData è ora una classe protetta. (Ic940d)
- CanvasComplicationFA.create (che è in genere associato a io) viene ora chiamato in un thread in background per ogni complicazione prima dell'inizio del rendering del thread UI. Tra la costruzione e il rendering c'è una barriera di memoria, quindi non sono necessarie primitive di thread speciali. (Ia18f2)
- La creazione del quadrante ora viene eseguita su un thread in background, anche se tutto il rendering viene eseguito sul thread UI, GlesRenderer supporta due contesti collegati a supporto. 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 nel file api.txt. (I54801)
- Abbiamo impostato EditorSession.createOnWatchEditingSession generando un TimeoutAnnullationException in caso di errore anziché inviare una sessione nulla. Inoltre, il valore restituito di EditorRequest.createFromIntent e EditorSession.createOnWatchEditingSession ora è NonNull. (I41eb4)
Versione 1.0.0-alpha14
18 maggio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha14
. La versione 1.0.0-alpha14 contiene questi commit.
Nuove funzionalità
EditorSession.openComplicationProviderChooser
ora restituisce ChosenComplicationProvider, che contiene l'ID complicazioneComplicationProviderInfo
, e un bundle contenente eventuali altri extra restituiti dal selettore del provider.- Inoltre, stiamo eseguendo costantemente la migrazione del codice a Kotlin e la maggior parte dell'API per i quadranti ora è definita in Kotlin.
Modifiche alle API
- Ora le proprietà GlesRenderer
eglContext
eeglDisplay
non possono creare valori null. Tutti gli errori GL vengono ora segnalati tramiteGlesRenderer.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 dal prescelto. (Iead6d)
Complicazioni di usura e Quadrante versione 1.0.0-alpha13
5 maggio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha13
. 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 fornire supporto per screen reader in tal senso, ora il quadrante può specificare l'accessibilità ContentDescriptionLabel tramite la proprietà aggiuntivaContentDescriptionLabel del renderer. Inoltre, per controllare l'ordine delle etichette ContentDescriptionLabel, è stato aggiunto l'accessibilitàTraversalIndex alle complicazioni. Può essere modificato da un valore ComplicationsUserStyleSetting.
Per incoraggiare gli sviluppatori a prendere in considerazione attentamente gli screen reader, abbiamo reso obbligatorio l'inserimento nei loro costruttori dei campi
contentDescription
diShortTextComplicationData.Builder
,LongTextComplicationData.Builder
eRangedValueComplicationData.Builder
. Se viene trasmessoComplicationText.EMPTY
percontentDescription
, verrà generato automaticamente uncontentDescription
dal testo e dal titolo.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
ora generaServiceStartFailureException
se il quadrante genera un'eccezione durante l'init. Ciò semplifica la diagnosi dei problemi durante l'avvio del quadrante.
Modifiche alle API
- Abbiamo aggiunto il supporto per avere un nome componente nullo in ComplicationProviderInfo, che è 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 tutte le classi dall'API pubblica che si trova in android.support.wearable.complications e creato i contenuti corrispondenti wrapper in AndroidX se necessario. (I7bd50)
- Abbiamo rinominato il metodo
TimeDifferenceComplicationText.Builder
dalle oresetMinimumUnit
allesetMinimalTimeUnit
. (I20c64) - Abbiamo creato
ShortTextComplicationData.Builder
, diLongTextComplicationData.Builder
econtentDescription
diRangedValueComplicationData.Builder
campo obbligatorio da passare nel costruttore. (I8cb69) - Abbiamo rinominato ComplicationProviderService.onComplicationUpdate in onComplicationRequest e l'ID e il parametro del tipo incapsulati di questo metodo nei dati ComplicationRequest. Il listener corrispondente è stato rinominato ComplicationRequestListener e il metodo ComplicationRequestListener.onComplicationData. (Iaf146)
- Abbiamo rimosso il metodo
isActiveAt
daComplicationData
e campo espostovalidTimeRange
. Questo la chiamata al metodo può essere sostituita convalidTimeRange.contains
. (I65936) - Abbiamo cambiato 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, poiché potrebbe esserci sia un contesto interattivo che un contesto headless, è necessario chiamarlo. (I8a43c).
- WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient ora genera ServiceStartFailureException se il quadrante orologio viene generato durante l'init. Inoltre, WatchFaceService ora genera un'eccezione se createWatchFace richiede più di 6 secondi. (I59b2f)
- Abbiamo rimosso la proprietà dell'ID inutilizzato di
GlesTextureComplication
. (I28958) - Ora il quadrante può specificare ContentDescriptionLabel per l'accessibilità tramite la proprietà aggiuntivaContentDescriptionLabel di
Renderer
. Oltre a controllare l'ordine delle etichette ContentDescriptionLabel, l'accessibilitàTraversalIndex è stata aggiunta alle complicazioni. Può essere modificato da un valore ComplicationsUserStyleSetting. (Ib7362) - Espandi la documentazione sulla gestione degli eventi touch nel quadrante. (Iaf31e)
Correzioni di bug
EditorSession.getComplicationsPreviewData()
ora restituisce una mappa per tutte le complicazioni anziché solo non vuote. Viene utilizzata un'istanza di EmptyComplicationData per le complicazioni vuote. (I1ef7e)
Complicazioni di usura e Quadrante versione 1.0.0-alpha12
21 aprile 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha12
. La versione 1.0.0-alpha12 contiene questi commit.
Nuove funzionalità
Gli editor dei quadranti devono evidenziare alcune parti del quadrante per aiutare a capire quale aspetto di un orologio viene configurato. Abbiamo esteso i RenderParameters per consentire di evidenziare gli stili e le complicazioni. C'è un nuovo strato in evidenza facoltativo, pensato per essere agganciato al quadrante con trasparenza alfa (le API per gli screenshot possono eseguire questa operazione al posto tuo oppure fornire autonomamente l'evidenziazione per la massima flessibilità). Ad es. Supponiamo che tu abbia uno stile che consente di configurare l'aspetto delle lancette dell'orologio, il renderer nel suo renderHighlightlayer può tracciare un contorno intorno a queste lancette.
Per incoraggiare il supporto dei fornitori di complicazioni per l'accessibilità, abbiamo realizzato PhotoImageComplicationData.Builder's, MonochromaticImageComplicationData.Builder e il campo contentDescription di SmallImageComplicationData.Builder come argomento obbligatorio del costruttore. Sono stati aggiunti i filtri ComplicationTapFilter e Complication.createEdgeComplicationBuilder per supportare le complicazioni ai bordi (disegnate lungo il bordo dello schermo). Il rendering e gli hit test delle complicazioni periferiche vengono lasciati al quadrante orologio. Il test degli hit perimetrale non è supportato dall'editor companion.
Modifiche alle API
- Prefisso
PROVIDER_
aggiunto alle costanti in SystemProviders. (I1e773). - Abbiamo creato
PhotoImageComplicationData.Builder
, diMonochromaticImageComplicationData.Builder
e CampocontentDescription
diSmallImageComplicationData.Builder
obbligatorio per nel costruttore. (I9643a) ProviderInfoRetriever.requestPreviewComplicationData
è stato rinominato inretrievePreviewComplicationData
. (I911ee)- Migrazione di
ComplicationProviderService
da Java a Koltin eseguita. (I849f2) - Il metodo
ComplicationProviderService.onBind
è ora definitivo (I39af5) - Abbiamo reintegrato l'interfaccia
CanvasComplication
e spostatoCanvasComplicaitonDrawable
,GlesTextureComplication
eComplicationHighlightRenderer
inwear-watchface-complications-rendering
. (I84670) RenderParameters
è stato sottoposto a refactoring per supportare il rendering esteso dell'evidenziazione. Ora è possibile richiedere il rendering delle evidenziazioni per gli stili nonché di tutte le complicazioni o di una singola complicazione. Inoltre, CanvasRenderer e GlesRenderer presentano un nuovo metodo renderHighlightlayer astratto per eseguire il rendering di qualsiasi evidenziazione richiesta dall'editor. Il livello è stato rinominato WatchFacelayer. (Ic2444)ComplicationTapFilter
eComplication.createEdgeComplicationBuilder
sono stati aggiunti per supportare le complicazioni perimetrali. Il rendering e gli hit test delle complicazioni periferiche vengono lasciati al quadrante orologio. Gli hit test non sono supportati all'interno degli editor. (Ia6604)- Per
DoubleRangeUserStyleSetting
eLongRangeUserStyleSetting
:defaultValue
,maximumValue
eminimumValue
ora sono proprietà Kotlin. Inoltre, sono state rimosse funzioniUserStyleSetting.Option
come toBooleanOption, toCoplicationOptions, toListOption e simili. (I52899) - Aggiungi la dimensione del mento alle proprietà del dispositivo disponibili per il quadrante. (I76e1e)
- Il costruttore di
ComplicationHighlightRenderer
ora accetta i parametrioutlineExpansion
eoutlineStrokeWidth
. (I87009) ComplicationDrawable.getNoDataText
ora fa parte dell'API pubblica. (I00598)
Versione 1.0.0-alpha11
7 aprile 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha11
. La versione 1.0.0-alpha11 contiene questi commit.
Nuove funzionalità
- È stato applicato un nuovo look alle API dei quadranti. La maggior parte delle modifiche sono semplici rinominazioni, ma i criteri
InteractiveWatchFaceWcsClient
eInteractiveWatchFaceSysUiClient
sono stati uniti inInteractiveWatchFaceClient
.
Modifiche alle API
- ContentDescriptionLabel.text è ora un ComplicationText anziché la vecchia libreria di supporto per indossabili TimeDependentText. (I80c03)
- La presenza di
SystemProviders.GOOGLE_PAY
non è garantita su tutti i dispositivi Android R, pertanto è stata rimossa dall'elenco. È comunque possibile utilizzare questo provider tramiteDefaultComplicationProviderPolicy
(If01b5) - Abbiamo rinominato ComplicationUpdateCallback in ComplicationUpdateListener per coerenza. (I61ec7)
- La mappa del formato dei cavi UserStyle è stata modificata in
Map<String, byte[]>
e per comodità è stata aggiunta una classeUserStyleData
all'API pubblica e ora viene utilizzata da wear-watchface-client e wear-watchface-editor. Inoltre, CustomValueUserStyleSetting.CustomValueOption.value è orabyte[]
anzichéString
. (Iaa103) UserStyleSetting
eUserStyleSetting.Option
ora utilizzano rispettivamenteUserStyleSetting.Id
eUserStyleSetting.Option.Id
per archiviare i rispettivi ID anziché una stringa. (I63f72)InteractiveWatchFaceClient.SystemState
è stato rinominato inWatchUiState
. (I6a4e0)InteractiveWatchFaceWcsClient
eInteractiveWatchFaceSysUiClient
sono stati uniti perché era difficile spiegare la divisione delle responsabilità (Iff3fa)- I valori enum dei livelli sono stati rinominati per maggiore chiarezza.
Layer#TOP_LAYER
ora èLayer#COMPLICATIONS_OVERLAY
eLayer#BASE_LAYER
ora èLayer#BASE
(Ia144e) UserStyleListener
è stato rinominato inUserStyleChangeListener
(I18524)UserStyleRepository
è stato rinominato inCurrentUserStyleRepository
(I6ea53)InteractiveWatchFaceWcsClient.updateInstance
è stato rinominato inupdateWatchfaceInstance
. (I321dc)- Gli eventi WatchFace TapType sono stati rinominati per essere allineati con MotionEvents / Compose. (I0dfd0)
- takeWatchfaceScreenshot è stato rinominato renderWatchFaceToBitmap e takeComplicationScreenshot è stato rinominato 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
inCanvasComplication.loadData
. (If1239) ComplicationsManager.bringAttentionToComplication
è stato rinominato indisplayPressedAnimation
. (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()
eHeadlessWatchFaceClient.createFromBundle
per supportare l'invio diHeadlessWatchFaceClient
tramite AIDL. (I07c35) - HeadlessWatchFaceClient e InteractiveWatchFaceClient ora dispongono di ClientDisconnettiListener e isConnectionAlive() per consentirti di osservare se la connessione si interrompe per qualche motivo (ad es. l'interruzione del quadrante). (Ie446d)
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync
è ora una funzione di sospensione ed è stata rinominatagetOrCreateInteractiveWatchFaceClient
. (Ib745d)EditorState.commitChanges
ehasCommitChanges()
sono stati rinominati inshouldCommitChanges()
. (I06e04)previewComplicationData
è stato rinominato inpreviewComplicationsData
per indicare che nella mappa (di solito) più di una complicazione. (I56c06)InteractiveWatchFaceWcsClient.bringAttentionToComplication
è stato rinominato indisplayPressedAnimation
per coerenza conComplicationsManager.displayPressedAnimation
. (Ic9999)- Tutte le istanze dell'ID istanza del quadrante sono state incapsulate in una nuova classe WatchFaceId (I45fdf)
- La proprietà
complicationState
è stata rinominata incomplicationsState
per indicare la pluralità. (Ided07) - Abbiamo rimosso le varie conversioni di Binder per gli smartwatch e gli smartwatch, che dovrebbero essere necessarie. (Icc4c0)
- Per coerenza è stato eseguito il refactoring di
EditorServiceClient
in modo da utilizzare i listener anziché gli osservatori. (Iec3a4). - Abbiamo aggiunto un paio di annotazioni
@Px
mancanti inInteractiveWatchFaceSysUiClient
eWatchFaceControlClient
. (I3277a) - È stato rinominato EditorObserverCallback in EditorObserverListener per coerenza. (Ie572d).
- EditorState.watchFaceInstanceId è limitato al livello API Android R e versioni successive e non è più annullabile. (ID52bb)
EditorSession.launchComplicationProviderChooser
è stato rinominato inopenComplicationProviderChooser
. (I9d441)EditorSession.createOnWatchEditingSessionAsync
è stato rinominato increateOnWatchEditingSession
e ora è una funzione di sospensione. (ID257b)- Sono state aggiunte diverse annotazioni
@UiThread
mancanti inEditorSession
. (I6935c) UserStyleSetting.affectsLayers
è stato rinominato inaffectedLayers
. (I6e22b).
Versione 1.0.0-alpha10
24 marzo 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha10
. 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 ora richiede una chiamata esplicita a initOpenGLContext, che può essere eseguita all'interno di createWatchFace.
Modifiche alle API
IdAndComplicationData
è stato un po' imbarazzante ed è stato rimosso dall'API pubblica. Corsi e il refactoring delle interfacce che lo utilizzavano. (I4c928).- Abbiamo sostituito
ReferenceTime
conCountUpTimeReference
eCountDownTimeReference
, che sono più autoesplicative. (Ib66c6) - Sono state aggiunte alcune annotazioni
@Px
e@ColorInt
mancanti. (I9bbc3) - Ora per
Complication.complicationConfigExtras
non è possibile impostare valori null e il valore predefinito èBundle.EMPTY
. (Iad04f) GlesRenderer
ora richiede di chiamare il numeroinitOpenGLContext
dopo i lavori. Questa funzione era un dettaglio interno, ma ora si trova nell'API pubblica per consentire le chiamate GL in precedenza 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 modificare la posizione di una complicazione, puoi farlo tramiteComplicationsUserStyleSetting
. (Ibd9e5).ComplicationsManager.TapCallback.onComplicationSingleTapped
è stato rinominato inonComplicationTapped
. (I3a55c).ComplicationOutlineRenderer.drawComplicationSelectOutline
è stato rinominato indrawComplicationOutline
. (I14b88)
Versione 1.0.0-alpha09
10 marzo 2021
Vengono rilasciate le versioni androidx.wear:wear-complications-*:1.0.0-alpha09
e androidx.wear:wear-watchface-*:1.0.0-alpha09
. La versione 1.0.0-alpha09 contiene questi commit.
Nuove funzionalità
- L'interfaccia tra l'host WCS/SysUI e il quadrante si è evoluta. Ora un editor può stabilire se una modifica dello stile attiverà o disattiverà una complicazione (enabled = initialEnabled più eventuali override di ComplicationsUserStyleSetting). Inoltre
EditorService.closeEditor
consente a SysUI di chiudere da remoto un editor sul quadrante, se necessario. - Inoltre,
InteractiveWatchFaceWcsClient.setUserStyle
con un comandoupdateInstance
più potente che: modifica l'ID istanza, imposta lo stile e cancella le complicazioni contemporaneamente.
Modifiche alle API
- L'elemento TraceEvents è stato aggiunto alle librerie dei quadranti orologio. (I1a141)
- Ora
ComplicationState
ha una nuova proprietàinitiallyEnabled
, utile per prevedere le conseguenze del cambio di stile. (I8c905) - Abbiamo sostituito
InteractiveWatchFaceWcsClient.setUserStyle
con un comando più potenteupdateInstance
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é questo era lento, ma lasciano al chiamante qualsiasi operazione di post-elaborazione. (ID35af)
- Ora è possibile chiudere da remoto un editor sul quadrante tramite
EditorService.closeEditor
. (Ic5aa4). - Aggiunta di annotazioni con valore nullo (Ic16ed)
Versione 1.0.0-alpha08
24 febbraio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha08
. La versione 1.0.0-alpha08 contiene questi commit.
Nuove funzionalità
- Alcuni quadranti sono progettati attorno a una o più complicazioni specifiche. A supporto di ciò, abbiamo aggiunto Complication.Builder#setFixedComplicationProvider che, se impostato su true, impedisce all'utente di modificare la complicazione in quello slot.
- Le librerie dei quadranti orologio sono prima Kotlin e utilizzano le coroutine (ad es. le funzioni di sospensione). Agli utenti Java abbiamo fornito wrapper ListenableFuture per migliorare l'interoperabilità nelle seguenti librerie: wear/wear-watchface-guava, wear/wear-watchface-client-guava e come indossare/come indossare il quadrante-editor-guava.
Modifiche alle API
- Abbiamo rimosso il supporto dei doppi tocchi sulle complicazioni durante il lancio del selettore del provider. Questa funzionalità non era comune nei quadranti orologio e ha complicato l'implementazione di SysUI. (I3ef24)
- I metodi ProviderInfoRetriever possono generare ServiceDisconnettiedException se il binder si chiude inaspettatamente. (Ib2cc4)
- A partire da Android 11, sono previste limitazioni in merito alle tempistiche di esecuzione di ProviderChooser, inoltre vorremmo che gli editor vengano creati con il nuovo
wear-watchface-editor
in modo che ComplicationHelperActivity venga rimosso dall'API pubblica. (Ib19c1). - Rimuovi i metodi statici di ComplicationText a favore dei builder. (Ibe399)
- Abbiamo introdotto i wrapper guava ListenableFuture per i vari metodi sospesi dalla raccolta dei quadranti. (I16b2c).
- Per chiarezza dell'API abbiamo aggiunto un costruttore secondario a RenderParameters che non richiede alcuna tinta, da utilizzare con LayerModes diversi da
LayerMode.DRAW_OUTLINED
. (I497ea) - In precedenza, ListUserStyleSetting era diverso dall'altro perché aveva un argomento predefinito. Ora tutti i costruttori della sottoclasse StyleSetting hanno il valore predefinito per ultimo. (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 in favore di un nuovo EditorService e
EditorSession.broadcastState()
per trasmettere gli aggiornamenti in streaming a un osservatore (in genere SysUI). (Ic4370). - Alcuni quadranti sono costruiti attorno a una particolare complicazione come parte integrante del quadrante, quando il fornitore non è configurabile dall'utente. A supporto di ciò, abbiamo aggiunto
Complication.Builder#setFixedComplicationProvider
. (I4509e) - EditorRequest ora specifica il nome del pacchetto anziché ComponentName perché era scomodo per SysUI cercare il nome della classe dell'editor e in realtà abbiamo bisogno solo del nome del pacchetto. (Ib6814)
Versione 1.0.0-alpha07
10 febbraio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha07
. 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'UI in attesa di IO. Analogamente, wear-watch face-editor e wear-complications-data
Modifiche alle API
- Rimuovi la classe PhotoImage e utilizza direttamente Icon. (I8a70b)
- Esponi il valore validTimeRange di ComplicationData. (I91366)
- Rendi più espliciti gli attributi simili a immagini. (I81700)
- Sono stati sottoposti a refactoring i dati relativi all'editor del quadrante e all'uso delle complicazioni per utilizzare le funzioni di sospensione invece delle coroutine. Rx Java e Eventuali wrapper compat futuri da seguire. (If3c5f).
- ProviderInfoRetriever ora genera PreviewNotAvailableException se requestPreviewComplicationData non può restituire i dati dell'anteprima a causa di problemi di connessione o della mancanza del supporto API. (I4964d)
- WatchFaceControlService::createWatchFaceControlClient è ora sospeso e getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient ora si chiama getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClientAsync che restituisce
Deferred<InteractiveWatchFaceWcsClient>
. A seguire, i wrapper compatibili con RX Java e Future. (I5d461) - Rinomina
CATEGORY_PROVIDER_CONFIG_ACTION
inCATEGORY_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 avresti dovuto bloccare il thread principale. (If076a)
- UserStyle ora dispone di un operatore array e abbiamo aggiunto helper di trasmissione a UserStyle.Option. (I35036)
- Abbiamo corretto un bug di marshalling con i formati wireless UserStyle, modificando alcune API nascoste instabili. (I8be09)
- Abbiamo aggiunto CustomValueUserStyleSetting che consente di memorizzare una singola stringa specifica dell'applicazione in un UserStyle. Gli editor dei quadranti predefiniti ignorano questo valore. (Ic04d2)
- L'elemento InstanceID non viene trasmesso negli extra per intent per le versioni R e precedenti di Android WearOS di cui non possiamo eseguire l'upgrade. A supporto di ciò, ora Permettiamo che InstancID sia nullo. (ID8b78)
- EditorRequest ora include l'editor ComponentName, che è impostato come componente in WatchFaceEditorContract.createIntent (I3cd06)
- L'EditorResult per il quadrante ora include l'anteprima ComplicationData per consentire al chiamante di acquisire uno screenshot del quadrante dopo la modifica. (I2c561).
Correzioni di bug
- Sono stati aggiunti gli override di toString() a UserStyle, UserStyleSetting e UserStyleSchema per semplificare l'utilizzo di queste classi. (I9f5ec)
Versione 1.0.0-alpha06
27 gennaio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha06
. La versione 1.0.0-alpha06 contiene questi commit.
Nuove funzionalità
- Abbiamo introdotto una nuova libreria per l'editor di quadranti orologio e abbigliamento che consente agli sviluppatori di quadranti e, potenzialmente, agli OEM di creare un editor di stili e complicazioni. SysUI invierà un intent al quadrante che utilizzerà la nuova classe EditorSession per accedere ai dettagli di WatchFace 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 dei ComplicationData. Il vantaggio dell'anteprima di ComplicationData è diverso dai dati pubblicati. Non devi preoccuparti di visualizzare finestre di dialogo di autorizzazione durante il rendering dell'editor (tieni presente che se un utente seleziona un fornitore con un'autorizzazione, gli verrà comunque chiesto di concedere l'autorizzazione).
Modifiche alle API
- Ora ComplicationProviderInfo ha un campo per ComponentName del provider; il supporto per questo campo verrà aggiunto a WearOS in un secondo momento; nel frattempo, il campo sarà null. (Id8fc4)
- Abbiamo aggiunto ProviderInfoRetriever.requestPreviewComplicationData che consente agli editor dei quadranti orologio di richiedere l'anteprima 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 un bundle facoltativo alle complicazioni che, se impostato, viene unito all'intent inviato per avviare l'attività del selettore di fornitori. (Ifd4ad).
- Abbiamo aggiunto una nuova libreria
wear-watchface-editor
per il supporto sul quadrante e sugli editor ospitati da SysUi. SysUI lancerà questi editor inviando un intent. Il servizio per l'attività dei quadranti può utilizzare la nuova classe EditorSession per accedere ai dettagli di WatchFace 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 evidenzia la complicazione specificata oltre a un contorno. (I90a40)
- Il futuro di WatchFaceControlClient.getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient ora può essere risolto con una ServiceStartFailureException se il servizio non è più disponibile mentre attendi la creazione del quadrante. (I0f509)
- EditorSession.complicationPreviewData è ora ListenableFuture perché il recupero di questi dati è un processo asincrono. (Iead9d)
Correzioni di bug
- I campi non utilizzati verranno rimossi da ComplicationOverlay lasciando attivati e complicationBounds. (I17b71)
Versione 1.0.0-alpha05
13 gennaio 2021
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha05
. 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. Per semplificare la configurazione, ora supportiamo le complicazioni disattivate inizialmente richiamando setEnabled(false) sullo strumento di creazione. Queste impostazioni possono essere attivate in un secondo momento tramite ComplicationsUserStyleSetting.
Modifiche alle API
- Ora ComplicationHelperActivity accetta
Collection<ComplicationType>
anziché un array Int, che ne semplifica l'utilizzo. (I1f13d). ProviderInfoRetriever.retrieveProviderInfo
ora restituisce correttamenteListenableFuture<ProviderInfo[]>
. (If2710)- Ora puoi creare una complicazione disattivata inizialmente chiamando setEnabled(false) nel builder. (Idaa53)
- WatchFaceState ora ha una proprietà isHeadless che è vera solo per le istanze headless. (Ifa900)
- ComplicationDrawable ora supporta facoltativamente il caricamento sincrono dei drawable. Viene utilizzato dalle API per gli screenshot. (I34d4a)
Versione 1.0.0-alpha04
16 dicembre 2020
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha04
. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- La raccolta di quadranti Wear ora supporta l'impostazione di limiti per tipo. Ad es. puoi passare a un riquadro di delimitazione largo per ComplicationType.LONG_TEXT mentre utilizzi un riquadro di delimitazione più piccolo per gli altri tipi.
Modifiche alle API
- Le complicazioni ora utilizzano ComplicationBounds, che aggrega un
Map<ComplicationType, RectF>
per supportare le dimensioni dei tipi di complicazione. (I1ebe7). - RenderParameters ora consente di specificare la tonalità di evidenziazione da utilizzare negli screenshot. (Iff42b).
- A parte i limiti per cui ora devi utilizzare ComplicationsUserStyleSetting per modificare le complicazioni, questo serve a garantire che il sistema operativo sia sincronizzato. (I8dc5d)
- Il renderer è ora una classe protetta. Ciò significa che CanvasRenderer e GlesRenderer sono ora classi interne di Renderer. (Iab5d4, b/173803230)
- Il nome CanvasComplicationDrawable.drawHighlight è stato rinominato in drawOutline. Ora ObservableWatchData ha alcune annotazioni UiThread mancanti. ScreenState è stato completamente rimosso da WatchState. (If1393)
- Il livello API minimo per il quadrante orologio è ora 25. Tieni presente che il supporto del canvas hardware richiede il livello API 26 o versioni successive. (Ic9bbd)
- InteractiveWatchFaceWcsClient ora dispone dell'helper getComplicationIdAt. (I05811)
- Il livello API per il client wear-watchface-è stato ridotto a 25, ma le API degli screenshot richiedono il livello API 27. (ID31c2)
Correzioni di bug
- Ora mostriamo l'attuale ComplicationData della complicazione ComplicationType della complicazione in ComplicationState. (I9b390)
- InteractiveWatchFaceWcs ora dispone del metodo "bingAttentionToComplication" per evidenziare brevemente la complicazione specificata. (I6d31c).
InteractiveWatchFaceWcsClient#setUserStyle
ora presenta un sovraccarico che accetta Map<string, string=""> il che può potenzialmente evitare il round trip IPC aggiuntivo necessario per creare UserStyle. (I24eec)</string,>
Versione 1.0.0-alpha03
2 dicembre 2020
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha03
. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
La classe Complication ora include una proprietà compicationData che consente ai quadranti di osservare le modifiche del ComplicationData. In questo modo è possibile modificare le dimensioni della complicazione in base al tipo.
Le frequenze fotogrammi variabili sono ora supportate dall'assegnazione a Renderer.interactiveDrawModeUpdateDelayMillis. Per i quadranti che eseguono brevi animazioni ogni secondo, è possibile risparmiare energia se si va in sospensione in assenza di animazioni.
Modifiche alle API
BACKGROUND_IMAGE
è stato rinominato inPHOTO_IMAGE
insieme ai corsi correlati. Questo tipo di complicazione non viene utilizzato esclusivamente per gli sfondi, da cui è dovuto il cambio di nome. (I995c6)- Valore predefinitoComplicationProviderPolicy correttamente annotato con IntDefs. (I3b431).
- La classe TimeDependentText nascosta non è più esposta tramite ContentDescriptionLabel, ma aggiungiamo una funzione di accesso per ottenere il testo in un momento specificato. (Ica692).
- Il costruttore di ObservableWatchData è ora interno. (I30121, b/173802666)
- Ora Complication dispone di compicationData, che consente ai quadranti di osservare i cambiamenti di ComplicationData. Complication ha anche una nuova chiamata isActiveAt che può essere utilizzata per stabilire se il rendering di un elemento deve essere eseguito alla data e ora specificata. (Ic0e2a).
- Il campo
SharedMemoryImage
vuoto non è più nell'API pubblica. (I7ee17) WatchFace.overridePreviewReferenceTimeMillis
ora ha un'annotazione IntRange e i getter e il setter hanno nomi coerenti. (Ia5f78)- Per maggiore chiarezza, l'elemento
Complication.Builder
viene ora creato tramiteComplication.createRoundRectComplicationBuilder
oComplication.createBackgroundComplicationBuilder
(I54063) - È stato aggiunto WatchFace.TapListener che consente di osservare i tocchi non consumati dalle complicazioni da parte di WatchFace. (Ic2fe1, b/172721168)
- WatchFace ora supporta frequenze fotogrammi variabili assegnandole a
Renderer.interactiveDrawModeUpdateDelayMillis
. Questo può aiutare a preservare la durata della batteria dormendo quando non si anima. (I707c9) - WatchFace.Builder non è più necessario e i valori di invalid() e automatedUpdateRateMillis sono stati spostati in Renderer. (I329ea)
- Per una migliore interoperabilità Java, puoi rinominare getter per le proprietà booleane in WatchState (I6d2f1)
- TapListener rinominato in TapCallback e InvalidateCallback in InvalidateListener per coerenza. (I9414e)
- Le opzioni di stile del quadrante Wear 2.0 sono state spostate nella propria classe per maggiore chiarezza. I setter WatchFace.Builder ora hanno getter di classe WatchFace simmetrici. (Iefdfc)
- Sono stati aggiunti InteractiveWatchFaceWcsClient e
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
, che ricevono un'istanza esistente o la creano dopo che il servizio wallaper si è connesso e ha creato il motore. (ID666e) - WatchFaceControlClient è ora un'interfaccia per consentire ai test di simularlo. (I875d9)
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl e InteractiveWatchFaceWcsClient sono ora interfacce per facilitare i test. (I7cdc3)
- Annotazioni aggiunte ai metodi in
wear-watchface-complications-rendering
(I0d65c)
Correzioni di bug
- Rimuovi la forma dello schermo da DeviceConfig, che duplicava
android.content.res.Configuration#isScreenRound()
(Ifadf4) - È stato modificato
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
per accettare unMap<String, String>
anziché unUserStyle
perché è difficile creare unUserStyle
senza conoscere lo schema che puoi ottenere solo dopo la creazione del client. (Iea02a). - Correggi
InteractiveWatchFaceWcsClient
per utilizzareComplicationState
al posto del formato del cavo. (Icb8a4) UserStyleSettings
è ora un corso chiuso perché gli editor dei quadranti comprendono solo i corsi integrati. (I2d797)
Versione 1.0.0-alpha02
11 novembre 2020
Viene rilasciato androidx.wear:wear-*:1.0.0-alpha02
. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
ComplicationDetails
ora si chiamaComplicationState
ed è aggregato correttamente ed è stata eseguita la migrazione degli utilizzi del supporto indossabile@ComplicationData.ComplicationType
ad AndroidxComplicationType
. (I4dd36)- Aggiungi un parametro
highlightedComplicationId
facoltativo a RenderParameters per richiedere l'evidenziazione di una singola complicazione negli screenshot. (I66ce9) ComplicationProviderService
per utilizzare la nuova API di complicazione dello stile per garantire coerenza (Id5aea)- Ora
getPreviewReferenceTimeMillis
ottiene i tempi di riferimento daDeviceConfig
. (I779fe) - Per semplificare la superficie dell'API Renderer, è possibile utilizzare
SurfaceHolder.Callback
per osservare le modifiche. (I210db) CanvasComplicationRenderer
non si estende daRenderer
, rinominandolo per maggiore chiarezza. (Ibe880)
Correzioni di bug
- Prima versione di
androidx.wear:wear-watchface-client
(I1e35e) - È stato cambiato il nome di
GlesTextureComplication#renderer
per maggiore chiarezza (Ib78f7) - Rinomina
StyleCategory
inStyleSetting
per maggiore chiarezza (I488c7) - Aggiunta di
UserStyleSchema
per un'API più pulita (If36f8)
Versione 1.0.0-alpha01
28 ottobre 2020
Vengono rilasciate le versioni androidx.wear:wear-complications-*:1.0.0-alpha01
e androidx.wear:wear-watchface-*:1.0.0-alpha01
. 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 la raccolta
androidx.wear:wear-complications-provider
. (I77f1f) - ComplicationsUserStyleCategory la nuova categoria consigliata per la configurazione delle complicazioni (I96909)
- Aggiungi l'API Wear-complication-data. (I7c268)
- Le funzioni con valori booleani restituiscono il prefisso "is" anziché "get" (If36ff)
- Il consiglio dell'API è evitare di utilizzare Protected, in modo che questa classe sia stata sottoposta a refactoring in modo da acquisire i parametri tramite il costruttore. (I61644)
- Rinomina setBackgroundComplication per maggiore chiarezza. (I96fe3)
- Utilizzare le proprietà di Kotlin per ComplicationDrawable isHighlighted & Dati (I4dcc8)
- Al posto di ComplicationRenderer.InvalidateCallback aggiungiamo Complication#invalidate() (I4f4c6)
- Queste API verranno ritirate in WearableSupport e verranno rimosse qui. (Ib425c).
- Sono stati rinominati alcuni metodi del builder di WatchFace per enfatizzare la loro natura legacy 2.0. (Idb775)
- Prima API beta candidata per l'uso di dispositivi indossabili (Id3981)
- Prima versione monitorata dell'API. (Ie9fe6)
- Nascondi correttamente ComplicationDrawable.BorderStyle IntDef e passa 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 di opzioni delle categorie di stile sono ora correttamente definitive. (Ib8323)
- Prima versione monitorata dell'API. (I27c85)
Correzioni di bug
- È stato modificato ComplicationProviderService in modo che abbia un metodo getComplicationPreviewData esplicito. (I4905f)
- Il controllo lint delle API per MissingGetterMatchingBuilder è abilitato per Androidx (I4bbea, b/138602561)
- Rinomina complicazioni di usura-rendering. (Ifea02)
- I nomi visualizzati delle categorie di stile sono ora CharSequences (I28990)
- Sostituzione dell'opzione Override con Overlay in modo che corrisponda ai temi e convenzioni di denominazione degli stili. (I4fde9)
- È stato cambiato il nome UserStyle#getOptions per maggiore chiarezza. (I695b6)
Versione 1.2.0
Versione 1.2.0
15 settembre 2021
Viene rilasciato androidx.wear:wear:1.2.0
. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
È stato aggiunto il componente CurvedText per scrivere facilmente testo curvo seguendo la curvatura del cerchio più grande che può essere inscritto nella visualizzazione. 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" />
È stato aggiunto il contenitore ArcLayout per il layout degli elementi secondari uno alla volta su un arco nella direzione in senso orario o antiorario. I suoi figli possono essere widget Android standard o "curvi" widget 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>
È stato aggiunto un nuovo contenitore di layout, IgnoraibleFrameLayout, che gestisce il pulsante Indietro e/o lo scorrimento per chiuderlo, destinato all'utilizzo all'interno di un'attività. Per intervenire su un'azione per ignorare, è necessario aggiungere almeno un listener. In genere, un listener rimuove una visualizzazione contenitore o un frammento dall'attività corrente. setScorriIgnorabile(booleano) e setBackButtonIgnoraible(booleano) per il controllo diretto delle funzionalità. Questo nuovo layout intende sostituire l'esistente ExploreDeleteFrameLayout.
È stato aggiunto il supporto per indicare che un'attività può essere "ripresa automaticamente" quando il dispositivo lascia la modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata da WearableSupportLibrary. (I336ab)
È stata migrata la classe WearableCalendarContract dalla libreria di supporto di Wearable. Questa API fornisce un sottoinsieme dei dati disponibili tramite CalendarContract, ma viene sincronizzata automaticamente con i dispositivi indossabili. (I6f2d7).
È stata aggiunta una nuova API
WearTypeHelper
inandroidx.wear.utils
per determinare se il dispositivo indossabile è destinato alla Cina. (Ib01a9)Sono state aggiunte a
androidx.wear.widget.ConfirmationOverlay
funzioni di accessibilità che leggono ad alta voce i messaggi, se impostati, seguiti dalla descrizione dell'animazione. (I524dd)È stato corretto il bug che causava l'arresto anomalo di ConfirmationActivity in assenza di messaggi è stato fornito. (Ie6055)
È stato corretto il bug per cui causava lo scorrimento orizzontale di RecyclerView
WearableDrawerLayout
per dare un'occhiata a 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
Viene rilasciato androidx.wear:wear:1.2.0-beta01
. La versione 1.2.0-beta01 contiene questi commit.
Correzioni di bug
- Correzione del bug che causava l'arresto anomalo di ConfirmationActivity in assenza di messaggi è stato fornito. (Ie6055)
Versione 1.2.0-alpha13
4 agosto 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha13
. La versione 1.2.0-alpha13 contiene questi commit.
Modifiche alle API
WearTypeHelper.isChinaDevice
rinominato inWearTypeHelper.isChinaBuild
. (I47302)
Correzioni di bug
- Abbiamo aggiunto a
androidx.wear.widget.ConfirmationOverlay
funzioni di accessibilità che leggono ad alta voce i messaggi, se impostati, seguiti dalla descrizione dell'animazione. (I524dd)
Versione 1.2.0-alpha12
21 luglio 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha12
. La versione 1.2.0-alpha12 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto una nuova API
WearTypeHelper
inandroidx.wear.utils
per stabilire se il dispositivo indossabile è destinato alla Cina. (Ib01a9)
Versione 1.2.0-alpha11
30 giugno 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha11
. La versione 1.2.0-alpha11 contiene questi commit.
Correzioni di bug
- È stato corretto il bug per cui causava lo scorrimento orizzontale di RecyclerView
WearableDrawerLayout
per dare un'occhiata a tutte le interazioni. (I24c7f)
Versione 1.2.0-alpha10
2 giugno 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha10
. La versione 1.2.0-alpha10 contiene questi commit.
Nuove funzionalità
- Alpha10 migliora il supporto dell'accessibilità in Curved Text e ArcLayouts. Inoltre, è stata aggiunta una piccola rinominazione al IgnoraibleFrameLayout per rendere più chiara l'API.
Modifiche alle API
- Abbiamo rinominato i seguenti metodi in
DismissibleFrameLayout
(Ib195e):Callback#onDismissed
->Callback#onDismissedFinished
isSwipeDismissible
->isDismissableBySwipe
isBackButtonDismissible
->isDismissableByBackButton
- Abbiamo reso definitivi i seguenti metodi (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
Viene rilasciato androidx.wear:wear:1.2.0-alpha09
. La versione 1.2.0-alpha09 contiene questi commit.
Modifiche alle API
- È stata aggiunta una nuova funzione
CurvedTextView.setTypeface()
(simile a quella diTextView
), per impostare il carattere tipografico del testo e lo stile grassetto/corsivo. (I4653c). WearArcLayout
è stato rinominato inArcLayout
,WearCurvedText
inCurvedText
eWearArcLayout.ArcLayoutWidget
inArcLayout.Widget
. (I6e5ce).- .
- Il giorno
ArcLayout.Widget
,getThicknessPx
è stato rinominato ingetThickness
. - Le costanti di allineamento verticale su
ArcLayout.LayoutParams
sono ora denominato che inizia conVERTICAL_ALIGN_
(anziché il precedenteVALIGN_
)
- Il giorno
- Il giorno
CurvedTextView
, i metodisetMinSweepDegrees
esetMaxSweepDegrees
sono stati sostituiti dasetSweepRangeDegrees
(I7a9d9)
Versione 1.2.0-alpha08
5 maggio 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha08
. La versione 1.2.0-alpha08 contiene questi commit.
Modifiche alle API
- Per migliorare la chiarezza del codice, abbiamo aggiunto annotazioni
@FloatRange
ad alcuni parametri angolari e tipi di restituzione. (I430dd) - Nell'interfaccia
WearArcLayout.ArcLayoutWidget
, il metodoinsideClickArea
ora è chiamato isPointInsideClickArea. (Ia7307)
Versione 1.2.0-alpha07
24 marzo 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha07
. La versione 1.2.0-alpha07 contiene questi commit.
Correzioni di bug
- Sono stati corretti gli errori relativi agli elementi secondari non curvi all'interno di WearArcLayout causati dall'utilizzo di dimensioni dello schermo con altezza superiore alla larghezza. Questi elementi secondari non curvi sono ora posizionati correttamente all'interno di un arco su tutti i tipi di schermi.
Versione 1.2.0-alpha06
27 gennaio 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha06
. La versione 1.2.0-alpha06 contiene questi commit.
Modifiche alle API
- Esegui la migrazione della libreria Attività in corso a una nuova libreria secondaria: wear-onContinua. Le lezioni si trovano ora nel pacchetto androidx.wear.onrunning (in precedenza era androidx.wear.onrunningactivities) (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 sincronizzata automaticamente con i dispositivi indossabili. (I6f2d7).
Correzioni di bug
- Disattiva la funzionalità di chiusura del pulsante Indietro per impostazione predefinita nel layout del frame ignorabile, in quanto lo scorrimento per ignorare rimane il metodo principale per tornare indietro a schermo intero sui dispositivi indossabili (Ic24e3).
- Sono stati risolti alcuni problemi di gestione della visibilità dei bambini su WearArcLayout (Icf912)
Versione 1.2.0-alpha05
13 gennaio 2021
Viene rilasciato androidx.wear:wear:1.2.0-alpha05
. La versione 1.2.0-alpha05 contiene questi commit.
Correzioni di bug
- Aggiorna il file javadoc della classe AmbientModeSupport per fornire snippet di esempio che illustrino meglio l'utilizzo generale di questa classe.
Versione 1.2.0-alpha04
16 dicembre 2020
Viene rilasciato androidx.wear:wear:1.2.0-alpha04
. La versione 1.2.0-alpha04 contiene questi commit.
Modifiche alle API
- È stato aggiunto il supporto per indicare che un'attività può essere "ripresa automaticamente" quando il dispositivo lascia la modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata da WearableSupportLibrary. (I336ab)
- AttivitàIn corso
- Ora la categoria può essere impostata durante la creazione di un'attività OnVai, ad esempio
OngoingActivitiy.Builder.getCategory(String)
- Ora OnVaiActivityData è stato creato un timestamp che indica la data di creazione dell'Attività di OnVai:
OngoingActivityData.getTimestamp()
- (I91cb4)
- Ora la categoria può essere impostata durante la creazione di un'attività OnVai, ad esempio
- È stato aggiunto il supporto per l'impostazione dei margini negli elementi secondari di WearArcLayout modificando i parametri di layout per estendere MarginLayoutParams, ad esempio WearArcLayout.LayoutParams estende android.view.ViewGroup.MarginLayoutParams. (I2cd88)
- Modifica il tipo di ancoraggio predefinito di WearCurvedTextView in
WearArcLayout.ANCHOR_CENTER
(eraWearArcLayout.ANCHOR_START
). Ciò semplifica la contrazione tra il layout dell'arco e il testo curvo, poiché per impostazione predefinita il testo curvo viene disegnato con il centro x in alto e il layout dell'arco principale può ruotarlo dove necessario. (I105ff)
Versione 1.2.0-alpha03
2 dicembre 2020
Viene rilasciato androidx.wear:wear:1.2.0-alpha03
. La versione 1.2.0-alpha03 contiene questi commit.
Nuove funzionalità
Un nuovo contenitore di layout, IgnoraibleFrameLayout, che gestisce la chiusura del pulsante Indietro e/o lo scorrimento per chiuderlo, destinato all'uso all'interno di un'attività. Per intervenire su un'azione per ignorare, è necessario aggiungere almeno un listener. In genere, un listener rimuove una visualizzazione contenitore o un frammento dall'attività corrente. setScorriIgnorabile(booleano) e setBackButtonIgnoraible(booleano) per il controllo diretto delle funzionalità. Questo nuovo layout intende sostituire l'esistente ExploreDeleteFrameLayout.
I widget curvi ora gestiscono gli eventi tocco. I normali widget all'interno di WearArcLayout riceveranno tutti gli eventi touch, mappati allo spazio di coordinate. WearCurvedTextView (all'interno o all'interno di WearArcLayout o meno) può impostare i gestori frequenza e onLongClick.
Le classi di attività in corso sono ora disponibili con più versioni invece di utilizzare serializzazione/deserializzazione personalizzate. Ora l'icona statica e l'intent al tocco sono obbligatori.
Modifiche alle API
- L'attributo "sweepDegrees" per WearCurvedTextView è separata in minSweepDegrees e maxSweepDegrees per offrire un layout più flessibile di questo widget.
Versione 1.2.0-alpha02
11 novembre 2020
Viene rilasciato androidx.wear:wear:1.2.0-alpha02
. La versione 1.2.0-alpha02 contiene questi commit.
In questa release è stata aggiunta per la prima volta una nuova "API Attività in corso". Questa API può essere utilizzata dagli sviluppatori per segnalare che un'attività di lunga durata, ad esempio un allenamento di fitness o una sessione di riproduzione di contenuti multimediali, è in corso. Consente agli sviluppatori di fornire aggiornamenti periodici dello stato, ad esempio "distanza e tempo di corsa" o "traccia attuale in riproduzione", da mostrare sul quadrante o in Avvio app. Questa funzionalità è destinata ai dispositivi futuri su cui sarà attiva la funzionalità Attività in corso.
Modifiche alle API
- Nuova API per le attività in corso, questa non è operativa sui "dispositivi non supportati". (I69a31)
Versione 1.2.0-alpha01
28 ottobre 2020
Viene rilasciato androidx.wear:wear:1.2.0-alpha01
. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stato aggiunto il componente WearCurvedTextView per scrivere facilmente testo curvo seguendo la curvatura del cerchio più grande che può essere inscritto nella visualizzazione. 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"
/>
- È stato aggiunto il contenitore WearArcLayout per disporre gli elementi secondari uno alla volta su un arco nella direzione in senso orario o antiorario. I suoi figli possono essere widget Android standard o "curvi" widget che implementano la propria 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>
(I536da)
Wear-Input 1.2
Versione 1.2.0-alpha02
29 settembre 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.2.0-alpha02
e androidx.wear:wear-input-testing:1.2.0-alpha02
. La versione 1.2.0-alpha02 contiene questi commit.
Modifiche alle API
disallowEmoji
è stata rinominata insetEmojisAllowed
inWearableRemoteInputExtender
per consentire di stabilire se mostrare o meno l'opzione per disegnare emoji. (I28393)
Versione 1.2.0-alpha01
15 settembre 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.2.0-alpha01
e androidx.wear:wear-input-testing:1.2.0-alpha01
. La versione 1.2.0-alpha01 contiene questi commit.
Modifiche alle API
- Tutte le costanti della posizione del pulsante da
WearableButtons
esposte. (Ibb12c). - È stata aggiunta la classe
WearableRemoteInputExtender
che può essere utilizzata per aggiungere extra specifici di Wear all'app android.app.RemoteInput. (I01903)
Wear-Input 1.1.0
Versione 1.1.0
18 agosto 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.1.0
e androidx.wear:wear-input-testing:1.1.0
. 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. Questo può essere utilizzato per richiedere input agli utenti in un'attività personalizzabile.
Versione 1.1.0-rc01
4 agosto 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.1.0-rc01
e androidx.wear:wear-input-testing:1.1.0-rc01
. La versione 1.1.0-rc01 contiene questi commit.
Nessuna modifica all'API dal giorno androidx.wear:wear-input:1.1.0-beta01
e dal giorno 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 rilasciate 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
Vengono rilasciate le versioni androidx.wear:wear-input:1.1.0-alpha03
e androidx.wear:wear-input-testing:1.1.0-alpha03
. La versione 1.1.0-alpha03 contiene questi commit.
Correzioni di bug
- È stato corretto il bug che causava il rifiuto degli intent RemoteInput, a cui erano stati aggiunti
RemoteInput
tramiteRemoteInputHelper.putRemoteInputsExtra
.
Versione 1.1.0-alpha02
18 maggio 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.1.0-alpha02
e androidx.wear:wear-input-testing:1.1.0-alpha02
. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- I metodi di
RemoteInputIntentHelper
utilizzati per ottenere o inserire extra che rappresentano il titolo, l'annullamento, la conferma e le etichette In corso ora utilizzanoCharSequence
anzichéString
per queste etichette. (I0e71f).
Versione 1.1.0-alpha01
27 gennaio 2021
Vengono rilasciate le versioni androidx.wear:wear-input:1.1.0-alpha01
e androidx.wear:wear-input-testing:1.1.0-alpha01
. 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 tramite l'avvio di un intent. (I47cee)
Wear-Input 1.0.0
Versione 1.0.0
2 dicembre 2020
Vengono rilasciate le versioni androidx.wear:wear-input:1.0.0
e androidx.wear:wear-input-testing:1.0.0
. La versione 1.0.0 contiene questi commit.
Questa release è identica a 1.0.0-rc01
.
Funzionalità principali di 1.0.0
Migrazione della funzionalità WearableButtons dalla libreria di assistenza Wearable a Jetpack.
È stato aggiunto l'elemento
androidx.wear.input.test.TestWearableButtonsProvider
che implementaandroidx.wear.input.WearableButtonsProvider
per supportare le applicazioni di test sviluppate con la libreriaandroidx.wear:wear-input
.
Versione 1.0.0-rc01
11 novembre 2020
Vengono rilasciate le versioni androidx.wear:wear-input:1.0.0-rc01
e androidx.wear:wear-input-testing:1.0.0-rc01
. 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 rilasciate 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
Viene rilasciato androidx.wear:wear-input-testing:1.0.0-alpha01
. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- È stato aggiunto l'elemento
androidx.wear.input.test.TestWearableButtonsProvider
che implementaandroidx.wear.input.WearableButtonsProvider
per supportare le applicazioni di test sviluppate con la libreriaandroidx.wear:wear-input
. (I0ed0c)
Wear-Input versione 1.0.0-alpha01
2 settembre 2020
Viene rilasciato androidx.wear:wear-input:1.0.0-alpha01
. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
Migrazione della funzionalità WearableButtons dalla libreria di assistenza Wearable a Jetpack. Nella prossima release di Jetpack verrà fornito un supporto aggiuntivo per i test nella libreria androidx.wear:wear-input-testing
.
Versione 1.1.0
Versione 1.1.0
14 ottobre 2020
Viene rilasciato androidx.wear:wear:1.1.0
. La versione 1.1.0 contiene questi commit.
Modifiche principali dalla versione 1.0.0
- È stato aggiunto un prefisso
layout_
all'attributo boxedEdges (oralayout_BoxedEdges
) perBoxInsetLayout
al fine di rispettare la convenzione di denominazione Android. Verrà rimosso l'errore linter in Android Studio per questi attributi. (I4272f) - Il campo
EXTRA_ANIMATION_DURATION_MILLIS
facoltativo è stato aggiunto aConfirmationActivity
per consentire l'intervallo di tempo durante il quale viene visualizzata la finestra di dialogo di conferma. (adb83ce, b/143356547) - Aggiornamento
WearableActionDrawView
per ritardare l'inflazione del riquadro a scomparsa delle azioni fino all'apertura del riquadro per la prima volta. (I01026, b/163870541)
Versione 1.1.0-rc03
2 settembre 2020
Viene rilasciato androidx.wear:wear:1.1.0-rc03
. La versione 1.1.0-rc03 contiene questi commit.
Correzioni di bug
- È stato risolto il problema per cui il riquadro a scomparsa delle azioni non mostrava i contenuti quando viene aperto. (I01026, b/163870541)
Versione 1.1.0-rc02
24 giugno 2020
Viene rilasciato androidx.wear:wear:1.1.0-rc02
. La versione 1.1.0-rc02 contiene questi commit.
Correzioni di bug
- È stato aggiunto un prefisso
layout_
all'attributo boxedEdges (oralayout_boxedEdges
) perBoxInsetLayout
al fine di rispettare la convenzione di denominazione Android. Verrà rimosso 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
Viene rilasciato androidx.wear:wear:1.1.0-alpha01
. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
- Il campo
EXTRA_ANIMATION_DURATION_MILLIS
facoltativo è stato aggiunto aConfirmationActivity
per consentire l'intervallo di tempo durante il quale viene visualizzata la finestra di dialogo di conferma. (adb83ce, 134523c, b/143356547)
Correzioni di bug
- Aggiornamento
WearableActionDrawView
per ritardare l'inflazione del riquadro a scomparsa delle azioni fino all'apertura del riquadro per la prima volta. (5cd32f7)