Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
(Consulta la documentazione di riferimento per tutti i pacchetti Wear
Questa tabella elenca tutti gli artefatti nel gruppo androidx.wear
.
Elemento | Release stabile | Candidato per la release | Versione beta | Release alpha |
---|---|---|---|---|
wear | 1.3.0 | - | - | 1.4.0-alpha01 |
usura | 1.1.0 | - | - | 1.2.0-alpha02 |
test-usura | 1.1.0 | - | - | 1.2.0-alpha02 |
come indossabile | 1.0.0 | - | - | 1.1.0-alpha01 |
interazioni-smartphone | 1.0.1 | - | - | 1.1.0-alpha04 |
interazioni-da-utilizzo-da-remoto | 1.0.0 | - | - | 1.1.0-alpha02 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza su Wear, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Groovy
dependencies { implementation "androidx.wear:wear:1.3.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.1.0" implementation "androidx.wear:wear-input-testing:1.1.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.0.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.0.1" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.0.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.1.0") implementation("androidx.wear:wear-input-testing:1.1.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.0.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.0.1") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.0.0") }
Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Wear Core versione 1.0
Versione 1.0.0-alpha01
29 maggio 2024
androidx.wear:wear-core:1.0.0-alpha01
viene rilasciato. 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 Strumenti versione 1.0
Versione 1.0.0
29 novembre 2023
androidx.wear:wear-tooling-preview:1.0.0
viene rilasciato. La versione 1.0.0 contiene questi commit.
Funzionalità nella versione 1.0.0
- Aggiungi
WearDevices
per elencare i dispositivi Wear validi che possono essere utilizzati per le anteprime dell'UI.
Versione 1.0.0-rc01
15 novembre 2023
androidx.wear:wear-tooling-preview:1.0.0-rc01
viene rilasciato senza modifiche. La versione 1.0.0-rc01 contiene questi commit.
Versione 1.0.0-beta01
18 ottobre 2023
androidx.wear:wear-tooling-preview:1.0.0-beta01
viene rilasciato senza modifiche. La versione 1.0.0-beta01 contiene questi commit.
Versione 1.0.0-alpha01
23 agosto 2023
androidx.wear:wear-tooling-preview:1.0.0-alpha01
viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- Aggiungi
WearDevices
per elencare i dispositivi Wear validi che possono essere utilizzati per le anteprime dell'interfaccia utente (Ib036e)
Wear versione 1.4
Versione 1.4.0-alpha01
15 novembre 2023
androidx.wear:wear:1.4.0-alpha01
viene rilasciato. La versione 1.4.0-alpha01 contiene questi commit.
Correzioni di bug
- Icona
ConfirmationOverlay
verticalmente al centro quando non 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
in favore delle nuove classi consapevoli del ciclo di vita. - Aggiorna
ConfirmationOverlay
con nuove icone/layout, caratteri e metriche relative ai caratteri SwipeDismissTransitionHelper
è stato aggiornato per utilizzare uno sfondo disegnabile invece di un secondoView
per correggere gli errori quando si usaFragmentContainerView
- Animazione
SwipeDismissFrameLayout
aggiornata per essere coerente con le implementazioni della piattaforma Wear e di Scrittura Wear. SwipeDismissFrameLayout
correzione di bug per evitare di ignorare accidentalmente i frammenti con un'azione verticaleArcLayout
ora supporta le ponderazioni di espansione, che funzionano in modo simile alle normali ponderazioni 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
androidx.wear:wear:1.3.0-beta01
viene rilasciato. La versione 1.3.0-beta01 contiene questi commit.
Modifiche alle API
- Aggiornamento
AmbientLifecycleObserver
dopo il feedback.AmbientLifecycleObserverInterface
è stato rinominato inAmbientLifecycleObserver
ed è possibile ottenere un'istanza chiamandoAmbientLifecycleObserver(...)
.isAmbient
è stato spostato in un campo anziché in un metodo. (I84b4f)
Correzioni di bug
- Aggiunta di controlli null per gestire i casi in cui la vista principale è nulla durante la reimpostazione della versione alpha e traduzione in
SwipeToDismiss
. (Ib0ec7)
Versione 1.3.0-alpha05
19 aprile 2023
androidx.wear:wear:1.3.0-alpha05
viene rilasciato. La versione 1.3.0-alpha05 contiene questi commit.
Modifiche alle API
- Esegui la migrazione di
AmbientModeSupport
per utilizzareLifecycleObserver
. RitiraAmbientModeSupport
in favore delle nuove classi consapevoli del ciclo di vita. (I1593b)
Correzioni di bug
- Aggiorna l'approccio di visualizzazione dello sfondo di
SwipeDismissTransitionHelper
per utilizzare gli elementi disegnabili anziché aggiungere la visualizzazione per correggere gli errori durante l'utilizzo diFragmentContainerView
. (I851cd)
Versione 1.3.0-alpha04
25 gennaio 2023
androidx.wear:wear:1.3.0-alpha04
viene rilasciato. La versione 1.3.0-alpha04 contiene questi commit.
Correzioni di bug
- Abbiamo aggiornato l'animazione in
SwipeDismissFrameLayout
per renderla coerente con le implementazioni della piattaforma Wear e di Scrittura Wear. (I7261b)
Versione 1.3.0-alpha03
24 agosto 2022
androidx.wear:wear:1.3.0-alpha03
viene rilasciato. La versione 1.3.0-alpha03 contiene questi commit.
Nuove funzionalità
ArcLayout
ora supporta le ponderazioni di espansione, che funzionano in modo simile alle normali ponderazioni del layout. Ciò significa che puoi specificare la dimensione relativa degli elementi secondari senza dover calcolare direttamente i loro angoli. Abbiamo anche aggiunto un'impostazione "best effort"MaxAngleDegrees
, che viene rispettata quando si espandono gli elementi secondari con pesi. Ad esempio, potresti bloccare l'arco con diversi elementi secondari con pesi a 90 gradi, questo rispetterà anche lo spazio occupato da eventuali elementi non espansi.
Modifiche alle API
- Abbiamo aggiunto un peso a
ArcLayout.LayoutParams
che consente di espandere i widget per riempire lo spazio disponibile. Se c'è più di un widget, la relativa quota dello spazio disponibile è proporzionale alla ponderazione. Inoltre, abbiamo aggiuntoArcLayout.setMaxAngleDegrees
in modo che tu possa, ad esempio, limitare l'espansione a 90 gradi (NB questo non influisce sul layout dei widget secondari di dimensioni fisse). InfineArcLayout.Widget
ora hasetSweepAngleDegrees
che consente aArcLayout
di informare un Widget con un peso diverso da zero delle sue dimensioni. (I75f24). - Valore nulla aggiornato di
setColorFilter
(I99ddf, b/236498063)
Versione 1.3.0-alpha02
23 febbraio 2022
androidx.wear:wear:1.3.0-alpha02
viene rilasciato. La versione 1.3.0-alpha02 contiene questi commit.
Nuove funzionalità
- Supporto di
layoutDirection
suArcLayout
(I14d49) - Miglioramento del messaggio di descrizione dei contenuti perConfirmationOverlay (I0fdf8)
- Aggiorna
ConfirmationOverlay
con nuove icone/layout. (If5b54)
Correzioni di bug
- Sono state aggiunte regole ProGuard per garantire che il codice relativo all'ambiente venga conservato (Idaa10)
- Evita di ignorare accidentalmente i frammenti in ScorrimentFrameLayout con un'azione verticale (Idb6d8)
- Risolvere l'overlay di conferma quando non è presente alcun messaggio (I63e6f)
Contributi esterni
- Dae Gyu LEE (Samsung) - Evita di ignorare accidentalmente i frammenti in SwipeDeployFrameLayout con un'immagine verticale (Idb6d8)
Versione 1.3.0-alpha01
29 settembre 2021
androidx.wear:wear:1.3.0-alpha01
viene rilasciato. La versione 1.3.0-alpha01 contiene questi commit.
Correzioni di bug
ConfirmationOverlay
ora spinge l'icona verso l'alto per contenere messaggi più lunghi, senza che il messaggio entri nella cornice del dispositivo (o fuori dallo schermo). (I54bff)
Wear In corso e interazioni versione 1.1.0
VerWear-Interazioni con i telefoni versione 1.1.0-alpha04
10 gennaio 2024
androidx.wear:wear-phone-interactions:1.1.0-alpha04
viene rilasciato. La versione 1.1.0-alpha04 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
RemoteAuthClient.isRemoteAuthAvailable
che verifica se è disponibile l'autenticazione remota. (Ibc10c)
Versione 1.1.0-alpha02
10 gennaio 2024
androidx.wear:wear-remote-interactions:1.1.0-alpha02
viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
RemoteActivityHelper.isRemoteActivityHelperAvailable
, che consente di verificare se è disponibile la funzionalità di avvio di un'attività remota. (I107a9) - Abbiamo aggiornato il costruttore di
RemoteActivityHelper
in modo che il parametro facoltativo sia compatibile in Java. (I75554)
Versione 1.1.0-alpha01
21 giu 2023
androidx.wear:wear-remote-interactions:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Correzioni di bug
- È stato migliorato il modo in cui vengono eseguite le operazioni di completamento e gestione degli errori in
RemoteActivityHelper
. (I60d60)
Contributi esterni
- Rimuovi la dipendenza Guava da
wear-remote-interactions
e utilizza alternative più piccole.
Interazioni con telefono con Wear versione 1.1.0-alpha03
9 marzo 2022
androidx.wear:wear-phone-interactions:1.1.0-alpha03
viene rilasciato. La versione 1.1.0-alpha03 contiene questi commit.
Correzioni di bug
redirectUrl
diOAuthRequest
ora restituisce una stringa vuota se l'URL di reindirizzamento non è impostato nell'URL di richiesta specificato. (I44242)
Interazioni con telefono con Wear versione 1.1.0-alpha02
15 dicembre 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha02
viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.
Correzioni di bug
- Correggi gli errori nella documentazione di
RemoteAuthClient
, inclusi gli errori nello snippet di codice e il link non più valido aErrorCode
(I260e8)
Interazioni con telefono con Wear versione 1.1.0-alpha01
15 settembre 2021
androidx.wear:wear-phone-interactions:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
Wear Sempre e interazioni versione 1.0.0
Interazioni con il telefono con Wear versione 1.0.1
15 dicembre 2021
androidx.wear:wear-phone-interactions:1.0.1
viene rilasciato. La versione 1.0.1 contiene questi commit.
Correzioni di bug
- L'eccezione corretta è stata generata da
BridgingManager
durante il tentativo di disattivare le notifiche di bridging senzaexcludedTags
.
Interazioni con il telefono come Wear OS Versione 1.0.0
15 settembre 2021
androidx.wear:wear-phone-interactions:1.0.0
e androidx.wear:wear-remote-interactions:1.0.0
vengono rilasciati. La versione 1.0.0 contiene questi commit.
Funzionalità principali della versione 1.0.0
La libreria di interazioni telefoniche contiene le API per le interazioni, dagli indossabili ai telefoni. Contiene quanto segue:
PhoneDeviceType
, che fornisce metodi di supporto per determinare il tipo di smartphone a cui è accoppiato l'orologio corrente, da utilizzare solo su dispositivi indossabili.- API
BridgingManager
,BridgingManagerService
eBridgingConfig
per abilitare/disabilitare le notifiche in fase di runtime e, facoltativamente, impostare tag per le notifiche esenti dalla modalità di bridging. RemoteAuthClient
, che offre supporto per l'autenticazione remota sugli indossabili e supporto per l'aggiunta dell'estensione OAuth PKCE. Sono forniti gestori e classi helper aggiuntivi per la comunicazione.
La libreria di interazioni remote contiene le API per le interazioni tra dispositivi indossabili e telefoni. Contiene quanto segue:
WatchFaceConfigIntentHelper
, che fornisce funzioni helper per specificare l'ID e il nome del componente nelle attività di configurazione del quadrante per l'annuncio companion sullo smartphone.RemoteActivityHelper
che può essere utilizzata per aprire intent su altri dispositivi (ad esempio dallo smartwatch al telefono).
Interazioni con il telefono come Wear OS Versione 1.0.0-rc01
1° settembre 2021
androidx.wear:wear-phone-interactions:1.0.0-rc01
e androidx.wear:wear-remote-interactions:1.0.0-rc01
vengono rilasciati. La versione 1.0.0-rc01 contiene questi commit.
Correzioni di bug
- Correggere un bug che impediva la propagazione degli errori segnalati in Google Play Services al chiamante durante l'utilizzo di RemoteActivityHelper (I60d60)
- Correggere il bug in cui RemoteActivityHelper non avrebbe mai completato il suo futuro in assenza di nodi connessi o se non è stato trovato il nodeId richiesto (I60d60)
Versione Wear-On 1.1
Versione 1.1.0-alpha01
23 agosto 2023
androidx.wear:wear-ongoing:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
- Aggiungi un campo per la descrizione dei contenuti all'Attività in corso. Verrà utilizzata dai servizi di accessibilità per descrivere l'Attività in corso. (I79fc6)
Correzioni di bug
- È stato aggiunto l'elemento
@RequiresPermission
alle API che richiedono la concessione dell'autorizzazionePOST_NOTIFICATIONS
su SDK 33 e versioni successive. (Ie542e, b/238790278).
Versione Wear-On 1.0.0
1° settembre 2021
androidx.wear:wear-ongoing:1.0.0
viene rilasciato. La versione 1.0.0 contiene questi commit.
Funzionalità principali della versione 1.0.0
- L'API Wear OnGoing Activity è un'API per sviluppatori, inclusi sviluppatori di terze parti, utilizzata per contrassegnare la propria attività come "Attività in corso" e fornire le informazioni necessarie.
- Con 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 come in corso verrà resa più in evidenza tramite un'icona overlay dedicata sul quadrante orologio e un rendering diverso in Avvio app.
- Per ulteriori informazioni, consulta la Guida alle attività in corso
Interazioni con il telefono come Wear OS Versione 1.0.0-beta01
18 agosto 2021
androidx.wear:wear-phone-interactions:1.0.0-beta01
e androidx.wear:wear-remote-interactions:1.0.0-beta01
vengono rilasciati. La versione 1.0.0-beta01 contiene questi commit.
Modifiche alle API
- Classe
RemoteIntentHelper
rinominata inRemoteActivityHelper
. FunzioniRemoteIntentHelper#getRemoteIntentExtraIntent
eRemoteIntentHelper#getRemoteIntentNodeId
rinominate inRemoteActivityHelper#getTargetIntent
eRemoteActivityHelper#getTargetNodeId
, rispettivamente. (Id2042)
Versione Wear-On 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.
Versione Wear-On 1.0.0-beta01
4 agosto 2021
androidx.wear:wear-ongoing:1.0.0-beta01
viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.
Modifiche alle API
- Alcuni setter su OnGoingActivity.Builder ora accettano un argomento null per fornire simmetria e coerenza a setter e getter (I17ee5)
Interazioni con telefono con Wear versione 1.0.0-alpha07
4 agosto 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha07
viene rilasciato. La versione 1.0.0-alpha07 contiene questi commit.
Modifiche alle API
- Rinominato
WearTypeHelper.isChinaDevice
inWearTypeHelper.isChinaBuild
. (I47302) - Abbiamo aggiornato la libreria RemoteAuthClient per scegliere automaticamente Redirect_uri in base al tipo di dispositivo (RoW/Cina). (I38866)
- Risolto il bug che causava l'esito negativo della conversione di BridgingConfig in/da bundle con ClassCastException. Test delle unità aggiunti per la classe BridgingManagerService. (I68ecb)
Wear-Remote-Interazioni Versione 1.0.0-alpha06
4 agosto 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha06
viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.
Interazioni con il telefono con Wear versione 1.0.0-alpha06
21 luglio 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha06
viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- La classe
BridgingManagerSeviceBinder
ora è una sottoclasse di Service e viene rinominata BridgingManagerSevice. (I9fca2). - Il metodo
RemoteAuthClient.Callback.onAuthorizationError
è stato modificato per includere il parametro OAuthRequest. I metodi che richiedono la richiamata ora richiedono anche un esecutore per l'esecuzione del callback. (I35e11)
Correzioni di bug
- Abbiamo reso l'API di autenticazione più chiara con parametri più documentati e utilizzando le proprietà ove possibile. (I12287)
Interazioni con telefono con Wear versione 1.0.0-alpha05
30 giugno 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha05
viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.
Correzioni di bug
- Parametri documentati che devono essere passati nel costruttore per
BridgingConfig.Builder
.
Versione Wear-On 1.0.0-alpha06
2 giugno 2021
androidx.wear:wear-ongoing:1.0.0-alpha06
viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.
Modifiche alle API
- Aggiungi il campo Titolo ad Attività in corso. (I7a405).
Correzioni di bug
SerializationHelper.copy()
ora dispone di una copia difensiva delle informazioni (I8b276)- Documentazione migliorata su setCategory (Iff01f)
Versione Wear-On 1.0.0-alpha05
18 maggio 2021
androidx.wear:wear-ongoing:1.0.0-alpha05
viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.
Modifiche alle API
OngoingActivity
ora dispone dei getter per recuperare tutti i valori direttamente impostati tramite Builder (o i valori predefiniti ricavati dalla notifica associata). (Id8ac8)- La nuova classe
Status
viene ora utilizzata per creare lo stato della classeOngoingActivity
OngoingActivityData
eOngoingActivityStatus
non fanno più parte dell'API pubblica.
- La nuova classe
Le classi
TextStatusPart
eTimerStatusPart
non fanno più parte dell'API pubblica. (I57fb6).- Per creare un
Part
con un testo statico, utilizzaStatus.TextPart
. - Per creare un
Part
con un cronometro (conto alla rovescia), utilizzaStatus.Stopwatch
- Per creare un
Part
con un timer (conto alla rovescia), utilizzaStatus.Timer
- Per creare un
Versione Wear-On 1.0.0-alpha04
5 maggio 2021
androidx.wear:wear-ongoing:1.0.0-alpha04
viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.
Modifiche alle API
- OnContinueActivity, i metodi fromexistingOnOnActivity ora chiamato fetchOnGoingActivity.
- OnheadingActivity ora ha un insieme completo di getter, gli stessi in precedenza disponibili solo in OnGoingActivityData. (I0ee4d).
Wear-Remote-Interazioni Versione 1.0.0-alpha05
21 luglio 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha05
viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.
Modifiche alle API
Abbiamo aggiunto la classe
RemoteIntentHelper
(in precedenza RemoteIntent nella libreria di supporto per dispositivi indossabili) che può essere utilizzata per aprire intent su altri dispositivi (ad es. dall'orologio al telefono). (I1d7e0).La classe PlayStoreAvailability è stata rimossa dalla libreria AndroidX. Per rilevare se il Play Store è disponibile su uno smartphone connesso, usa il metodo
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceType
per stabilire se lo smartphone connesso è uno smartphone Android. Quindi usa il metodoandroidx.wear.utils.WearTypeHelper.isChinaDevice
per determinare se il telefono connesso è un dispositivo cinese. Se il telefono è uno smartphone Android e non è un dispositivo cinese, il Play Store sarà disponibile. (Ie7dec)
Interazioni con telefono con Wear versione 1.0.0-alpha04
7 aprile 2021
androidx.wear:wear-phone-interactions:1.0.0-alpha04
viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.
Modifiche alle API
- Sono state aggiornate le costanti
ErrorCode
per rendere la nuova libreria compatibile con le versioni precedenti dell'implementazione nella libreria di assistenza per dispositivi indossabili.
Correzioni di bug
- Correzione dell'eccezione causata dalla nuova API OAuth all'avvio di una sessione OAuth.
Wear-Remote-Interazioni Versione 1.0.0-alpha03
7 aprile 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha03
viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.
Modifiche alle API
PlayStoreAvailability
modificato in una classe che contiene un oggetto companion con metodi statici. L'utilizzo rimane invariato.
Correzioni di bug
- È stato corretto il documento di riepilogo per
WatchFaceConfigIntentHelper
per mostrare correttamente il codice di esempio con caratteri HTML effettivi.
Interazioni con telefono con Wear in corso versione 1.0.0-alpha03
10 marzo 2021
androidx.wear:wear-ongoing:1.0.0-alpha03
e androidx.wear:wear-phone-interactions:1.0.0-alpha03
vengono rilasciati. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
- Esegui la migrazione di OAuthClient da Wearable Support Library ad AndroidX. La classe migrata viene rinominata in RemoteAuthClient e offre supporto per l'autenticazione remota sugli indossabili, oltre al supporto per l'aggiunta dell'estensione OAuth PKCE. Sono forniti gestori e classi helper aggiuntivi per la comunicazione.
- Ora le attività in corso possono essere associate a una notifica che ha un tag, utilizzando il nuovo costruttore OnGoingActivity.Builder.
Modifiche alle API
- Aggiunto il supporto per i tag di notifica nella libreria delle attività in corso (I653b4)
- Esegui la migrazione di OAuthClient da Wear Support Library ad AndroidX e aggiungi il supporto per l'estensione OAuth PKCE (I3eaaa)
Wear-Remote-Interazioni Versione 1.0.0-alpha02
10 marzo 2021
androidx.wear:wear-remote-interactions:1.0.0-alpha02
viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.
Nuove funzionalità
- Migrazione della classe PlayStoreAvailability da Wearable Support Library ad AndroidX che fornisce un'API per verificare se il Play Store è disponibile sul telefono.
Correzioni di bug
- Migrazione della classe PlayStoreAvailability da Wearable Support Library ad AndroidX. (I69bfe)
Versione 1.0.0-alpha02
10 febbraio 2021
androidx.wear:wear-ongoing:1.0.0-alpha02
e androidx.wear:wear-phone-interactions:1.0.0-alpha02
vengono rilasciati. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
- Aggiunto il supporto per stati più complessi. Sono composti da uno o più modelli e da una serie di parti che verranno utilizzate per riempire i segnaposto del modello. OnheadingActivityStatus ora dispone di un metodo statico per creare stati semplici con una sola parte (un testo o un timer) e di un Builder per creare stati più complessi. (I1fe81).
- Sposta le classi BridgingManager e BridgingConfig dalla libreria di supporto Wear ad AndroidX, che fornisce API per abilitare/disabilitare le notifiche in fase di runtime e, facoltativamente, impostare tag per le notifiche che sono esenti dalla modalità di bridging. (I3a17e).
Versione 1.0.0-alpha01
27 gennaio 2021
androidx.wear:wear-ongoing:1.0.0-alpha01
, androidx.wear:wear-phone-interactions:1.0.0-alpha01
e androidx.wear:wear-remote-interactions:1.0.0-alpha01
vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
Esegui la migrazione della libreria Attività continue in una nuova libreria secondaria: Abbigliamento continuo. I corsi ora sono disponibili nel pacchetto androidx.wear.on Contatti (I7c029)
Crea una nuova libreria di supporto che contenga i corsi che supportano le interazioni, dagli indossabili ai telefoni. Inizialmente contiene le classi di cui è stata eseguita la migrazione dalla libreria di supporto per dispositivi indossabili. (Id5180)
Esegui la migrazione della classe PhoneDeviceType da Wearable Support Library ad AndroidX. La classe migrata viene rinominata PhoneTypeHelper, che fornisce metodi di supporto per determinare il tipo di smartphone a cui è associato l'orologio corrente, da utilizzare solo su dispositivi indossabili. (Ibd947)
Crea una nuova libreria di supporto che contenga i corsi che supportano le interazioni tra dispositivi indossabili e telefoni. Inizialmente contiene le classi di cui è stata eseguita la migrazione dalla libreria di supporto per dispositivi indossabili. (I9deb4).
Esegui la migrazione della classe WatchFaceCompanion da Wearable Support Library ad AndroidX. La classe migrata viene rinominata WatchFaceConfigIntentHelper, che fornisce funzioni helper per specificare l'ID e il nome del componente nelle attività di configurazione del quadrante in combinazione sullo smartphone. Può anche essere utilizzata localmente per configurare il quadrante sul dispositivo indossabile. (Ia455f)
Come indossare le complicazioni e il quadrante 1.0.0
Versione 1.0.0-alpha22
15 settembre 2021
androidx.wear:wear-*:1.0.0-alpha22
viene rilasciato. La versione 1.0.0-alpha22 contiene questi commit.
Nuove funzionalità
- L'EditorSession ora si registra per gli osservatori del ciclo di vita in modo che non sia più necessario chiuderla esplicitamente quando scompare l'attività.
Modifiche alle API
- EditorSession e AscoltaableEditorSession ora utilizzano kotlin StateFlows per complicationSlotsState, ComplicationsPreviewData e ComplicationsDataSourceInfo. (I761d9)
- EditorSession#userStyle ora è un
MutableStateFlow<UserStyle>
(I32ca9) - EditorSession.createOnWatchEditorSession ora utilizza un osservatore del ciclo di vita e si chiude automaticamente quando osserva onDestroy. Inoltre, ora
createOnWatchEditorSession
richiede solo di trasmettere l'attività. Le modifiche identiche sono state applicate anche ad AscoltaableEditorSession. (Ic6b7f) - Il costruttore di CustomValueUserStyleSetting è stato reintegrato come parte dell'API pubblica. (I2e69a).
UserStyle
ora eredita daMap<UserStyleSetting, UserStyleSetting.Option>
eMutableUserStyleSetting#put
genera un'eccezione per motivi legali se l'impostazione non è nello schema o se l'opzione non corrisponde all'impostazione. (Iba40f)
Versione 1.0.0-alpha21
1° settembre 2021
androidx.wear:wear-*:1.0.0-alpha21
viene rilasciato. La versione 1.0.0-alpha21 contiene questi commit.
Modifiche alle API
- Tutte le API pubbliche per quadranti, client, editor e complicazioni ora usano java.time.Instant per orari anziché Long, di conseguenza il livello API minimo è aumentato a 26. (I3cd48)
- Le API del quadrante e delle complicazioni ora utilizzano il valore immutabile ZonedDateTime anziché Calendar. (I25cf8)
- Gli slot ComplicationSlot vengono ora inizializzati con NoDataComplicationData, ComplicationSlot.complicationData ora ha sempre un valore e CanvasComplicationDrawable.complicationData non è più null. (I4dfd6) In questo modo si riduce (ma non si elimina) lo sfarfallio delle complicazioni quando si passa da un quadrante all'altro.
Versione 1.0.0-alpha20
18 agosto 2021
androidx.wear:wear-*:1.0.0-alpha20
viene rilasciato. La versione 1.0.0-alpha20 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto createFallbackPreviewData a ComplicationDataSourceInfo, che può essere utilizzato quando ComplicationDataSourceInfoRetriever.retrievePreviewComplicationData restituisce null. (I38c4d).
- ComplicationDataSourceUpdateRequester è stato trasformato in un'interfaccia per consentire la simulazione nei test delle unità. Puoi creare un concreto ComplicationDataSourceUpdateRequester con ComplicationDataSourceUpdateRequester.create(). (I7da22)
- RenderParameters.PressComplicationSlotIds è stato sostituito da RenderParameters.lastComplicationTapDownEvents che espone la nuova classe TapEvent che contiene un triplo di coordinate x, y del tocco in pixel e un timestamp.
WatchFace.TapListener.onTap
è stato sostituito daonTapEvent(@TapType tapType: Int, tapEvent: TapEvent)
. Inoltre,InteractiveWatchFaceClient.displayPressedAnimation
è stato rimosso. (Id87d2) - È stata aggiunta l'annotazione di organizzazione esplicita in thread per setImportantForAccessibility (I990fa)
- ComplicationSlotBoundsType è stato spostato in androidx-wear-watchface.ComplicationSlotBoundsType in wear/wear-watch. (I09420)
- Abbiamo aggiunto il supporto per il trasferimento degli ID risorsa stringa in UserStyleSetting e Opzioni. Questo è il metodo consigliato per creare questi oggetti. (I03d5f)
- Sono stati imposti dei limiti alla dimensione massima dei cavi di uno schema UserStyle. Inoltre, le icone nello schema non devono essere più grandi di 400 x 400 pixel. (I3b65b).
- Abbiamo aggiunto una classe MutableUserStyle per supportare le modifiche alle istanze UserStyle (I95a40)
- Abbiamo rinominato
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClient
inListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient
. (I64ce2) - Abbiamo modificato EditorState.previewCompplicationsData in modo che contenga solo i dati relativi alle complicazioni attivate e abbiamo aggiunto
EditorSession.DEFAULT_PREVIEW_TIME_MILLIS
che, se passato arenderWatchFaceToBitmap
oPreviewScreenshotParams
, richiede il rendering con il tempo di anteprima predefinito del quadrante. (If7b3c) - Abbiamo rimosso i costruttori UserStyleSetting che acquisiscono CharSequence dall'API pubblica. Ti consigliamo di utilizzare i costruttori che richiedono gli ID StringResource. (I8537b)
CurrentUserStyleRepository.UserStyleChangeListener
ora supporta la conversione SAM. (I85989)
Versione 1.0.0-alpha19
4 agosto 2021
androidx.wear:wear-*:1.0.0-alpha19
viene rilasciato. La versione 1.0.0-alpha19 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient
, che fornisce un 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 RemoteException ora sono stati annotati di conseguenza. (Ib8438)
- Per coerenza, abbiamo rinominato
EditorSession.createOnWatchEditingSession
increateOnWatchEditorSession
; allo stesso modo,createHeadlessEditingSession
ora ècreateHeadlessEditorSession
. Anche i loro involucri di guava sono stati rinominati. (I1526b) - Ora
EditorSession
è un'interfaccia eListenableEditorSession.commitChangesOnClose
è ora delegata correttamente. (I7dc3e) - Ora rifiutiamo qualsiasi schema di stile utente con impostazioni o opzioni con ID in conflitto (Ic2715)
- Abbiamo aggiunto un dispositivo
UserStyle.get
sovraccarico che accettaUserStyleSetting.Id
. (I2aa0f).
Versione 1.0.0-alpha18
21 luglio 2021
androidx.wear:wear-*:1.0.0-alpha18
viene rilasciato. La versione 1.0.0-alpha18 contiene questi commit.
Modifiche alle API
- Abbiamo spostato
ComplicationHelperActivity
nella raccoltaandroidx.wear:wear-watchface
. (I39e76). - Per coerenza e chiarezza, il nome di
ComplicationProvider
è stato cambiato inComplicationDataSource
e tutti i corsi che includono il nome del fornitore sono stati rinominati in modo simile. (Iaef0b). CanvasComplication.isHighlighted
è stato spostato inRenderParameters.pressedComplicationSlotIds
e rappresenta un passo verso la trasformazione diCanvasComplication
stateless. Per supportare questa modifica,CanvasComplication.render
ora utilizza ancheslotId
come parametro e passiamoComplicationSlot
aGlesTextureComplication
. (I50e6e).- Abbiamo aggiunto
headlessDeviceConfig
aEditorRequest
. Se non è null, questo parametro viene utilizzato per creare un'istanza headless per eseguire il backup dell'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 dei quadranti, come ilUserStyleSchema
, e della correzione dei dettagli relativi aComplicationSlots
. (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 questi parametri. 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
androidx.wear:wear-*:1.0.0-alpha17
viene rilasciato. La versione 1.0.0-alpha17 contiene questi commit.
Nuove funzionalità
In
GlesRenderer
,makeUiThreadContextCurrent
emakeBackgroundThreadContextCurrent
sono stati sostituiti darunUiThreadGlCommands
erunBackgroundThreadGlCommands
, che entrambi accettanoRunnable
. La libreria assicura che sia in esecuzione un solo comando GL eseguibile alla volta.Per semplificare l'inizializzazione di UiThread, abbiamo aggiunto
CanvasRenderer.uiThreadInit
, che viene chiamato una volta su UiThread prima di qualsiasi chiamata al rendering. Abbiamo aggiunto ancheonRendererCreated
aCanvasComplication
, per consentire aRenderer
eCanvasComplication
di condividere più facilmente lo stato.Per chiarezza che abbiamo rinominato
Complication
inComplicationSlot
ecomplicationId
incomplicationSlotId
ocomplicationInstanceId
a seconda dell'utilizzo
Modifiche alle API
- Per chiarezza, abbiamo rinominato
Complication
inComplicationSlot
ecomplicationId
incomplicationSlotId
ocomplicationInstanceId
a seconda dell'utilizzo. Le classi che utilizzano le complicazioni sono state rinominate in modo simile. Ad esempio, ComplicationsManager ora si chiama ComplicationSlotsManager. (I4da44). - In GlesRenderer, i valori
makeUiThreadContextCurrent
emakeBackgroundThreadContextCurrent
sono stati sostituiti darunUiThreadGlCommands
erunBackgroundThreadGlCommands
, che entrambi accettanoRunnable
. Queste funzioni sono necessarie solo se devi effettuare chiamate GL al di fuori del rendering,runBackgroundThreadGlCommands
eonUiThreadGlSurfaceCreated
. Questo è necessario perché possono esserci più GlesRenderer, ognuno con i propri contesti nello stesso processo, potenzialmente da quadranti diversi. Ora viene sincronizzato l'accesso al contesto GL condiviso corrente. (I04d59) - Abbiamo aggiunto
CanvasRenderer.uiThreadInit
che viene chiamato una volta su UiThread prima di qualsiasi chiamata al rendering. Sempre per chiarezza in GlesRenderer abbiamo rinominatoonGlContextCreated
inonBackgroundThreadGlContextCreated
eonGlSurfaceCreated
inonUiThreadGlSurfaceCreated
. (If86d0) HeadlessWatchFaceClient
eInteractiveWatchFaceClient
getComplicationsSlotState
sono stati rinominati comegetComplicationSlotsState
. InComplicationSlot
:createRoundRectComplicationBuilder
,createBackgroundComplicationBuilder
ecreateEdgeComplicationBuilder
sono stati rinominati rispettivamentecreateRoundRectComplicationSlotBuilder
,createBackgroundComplicationSlotBuilder
ecreateEdgeComplicationSlotBuilder
. (Ib9adc).- Abbiamo aggiunto onRendererCreated a CanvasComplication che semplifica la condivisione dello stato per il renderer e CanvasCompplication. (I5e1ac).
Versione 1.0.0-alpha16
16 giugno 2021
androidx.wear:wear-*:1.0.0-alpha16
viene rilasciato. La versione 1.0.0-alpha16 contiene questi commit.
Nuove funzionalità
- Abbiamo corretto una serie di bug relativi alle recenti modifiche al modello di organizzazione in thread e abbiamo risolto altri problemi relativi all'editor sul quadrante.
Correzioni di bug
- Evita NPE in
onComplicationProviderChooserResult
(b/189594557) - Risolvi i problemi relativi alle superfici obsolete e disegnoBlack (b/189452267)
- Correggi il problema relativo alla razza nell'accesso a
complicationsManager.watchState
(b/189457893) - Correggere il bug relativo alla durata del thread in background (b/189445428)
- Risolvere i problemi relativi all'editor dei quadranti antecedenti (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
androidx.wear:wear-*:1.0.0-alpha15
viene rilasciato. La versione 1.0.0-alpha15 contiene questi commit.
Nuove funzionalità
La maggior parte dell'inizializzazione dei quadranti viene ora eseguita su un thread in background, ma dopo il caricamento di tutto il rendering dei quadranti e così via viene eseguita su UiThread. Esiste una barriera di memoria tra il caricamento e il rendering, quindi la maggior parte dei quadranti degli utenti non deve fare nulla di speciale. I quadranti che utilizzano GLES possono essere un'eccezione perché il contesto è specifico per i thread e creiamo due contesti collegati in modo che sia possibile caricare risorse GL (ad es. texture e Shader) sul thread di sfondo e utilizzarle su UiThread.
Abbiamo suddiviso la costruzione dei quadranti in tre funzioni: createUserStyleSchema, createCompplicationsManager e createWatchFace. Presupponiamo che createUserStyleSchema e createComplicationsManager siano veloci, quindi il caricamento degli asset con createWatchFace potrebbe richiedere del tempo. Approfittando di ciò, abbiamo introdotto WatchFaceControlClient.getDefaultProviderPoliciesAndType
, che restituisce una mappa degli ID delle complicazioni a defaultCompplicationProviderPolicies e al valore ComplicationType predefinito. Questa operazione è più rapida rispetto alla creazione di un'istanza headless, poiché non è necessario inizializzare completamente il quadrante per eseguire la query.
Infine, le complicazioni ora vengono create con una CanvasComplicationfabbrica che consente la costruzione pigra dei renderer CanvasComplication.
Modifiche alle API
@TargetApi
sostituito con@RequiresApi
. (I0184a, b/187447093, b/187447094).- Abbiamo introdotto
WatchFaceControlClient.getDefaultProviderPoliciesAndType
, che restituisce una mappa degli ID delle complicazioni a defaultCompplicationProviderPolicies e al valore ComplicationType predefinito. Laddove 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, ora le complicazioni vengono create con un CanvasComplicationfabbrica che consente la costruzione lazy dei renderer CanvasComplication. (Iad6c1). - Abbiamo rimosso MOST_RECENT_APP da SystemProviders. (I3df00).
- ObservableWatchData è ora una classe protetta. (Ic940d)
- CanvasComplicationIndustry.create (che in genere è associato a io) viene ora chiamato su un thread in background per ogni complicazione prima che inizi il rendering del thread dell'interfaccia utente. Esiste una barriera di memoria tra la costruzione e il rendering, quindi non sono necessarie primitive di threading speciali. (Ia18f2).
- La creazione del quadrante viene ora eseguita su un thread di sfondo, anche se il rendering viene eseguito sul thread dell'UI, GlesRenderer supporta due contesti collegati a questo scopo. WatchFaceControlClient.createHeadlessWatchFaceClient e WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient potrebbero essere risolti prima del completamento di WatchFaceService.createWatchFace. Le chiamate API successive verranno bloccate fino al completamento dell'inizializzazione di watchFace. (Id9f41)
- EXPANSION_DP e STROKE_WIDTH_DP non sono più visibili in api.txt. (I54801)
- Abbiamo fatto in modo che EditorSession.createOnWatchEditingSession restituisca TimeoutAnnullationException in caso di errore anziché inviare una sessione nulla. Inoltre, il valore restituito da EditorRequest.createFromIntent e EditorSession.createOnWatchEditingSession ora è NonNull. (I41eb4).
Versione 1.0.0-alpha14
18 maggio 2021
androidx.wear:wear-*:1.0.0-alpha14
viene rilasciato. La versione 1.0.0-alpha14 contiene questi commit.
Nuove funzionalità
EditorSession.openComplicationProviderChooser
ora restituisce ChosenComplicationProvider che contiene l'ID complicazione,ComplicationProviderInfo
e un bundle contenente eventuali extra aggiuntivi restituiti dal selettore del provider.- Inoltre, abbiamo costantemente migrato il codice a Kotlin e la maggior parte dell'API per i quadranti è ora definita in Kotlin.
Modifiche alle API
- Le proprietà GlesRenderer
eglContext
eeglDisplay
ora non sono null. Eventuali 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 in EditorSession. (I37f14)
- Abbiamo esteso il risultato di
EditorSession.openComplicationProviderChooser
in modo da includere le informazioni restituite dalla persona prescelta. (Iead6d).
Indossa complicazioni e quadrante versione 1.0.0-alpha13
5 maggio 2021
androidx.wear:wear-*:1.0.0-alpha13
viene rilasciato. La versione 1.0.0-alpha13 contiene questi commit.
Nuove funzionalità
I quadranti possono avere elementi visivi importanti oltre a mostrare l'ora e le complicazioni. Per fornire il supporto per lo screen reader a questo scopo, il quadrante orologio può ora specificare l'accessibilità ContentDescriptionLabels tramite la proprietà additionalContentDescriptionLabels del renderer. Inoltre, per controllare l'ordine dell'accessibilità di ContentDescriptionLabels, TraversalIndex è stato aggiunto alle complicazioni. Questa impostazione può essere modificata da un'impostazione ComplicationsUserStyleSetting.
Per incoraggiare gli sviluppatori a valutare attentamente gli screen reader, abbiamo reso obbligatorio l'invio nei loro costruttori dei campi
contentDescription
diShortTextComplicationData.Builder
,LongTextComplicationData.Builder
eRangedValueComplicationData.Builder
. Se viene trasmessoComplicationText.EMPTY
per ilcontentDescription
, verrà generato automaticamente uncontentDescription
dal testo e dal titolo.WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient
ora generaServiceStartFailureException
se il quadrante genera un'eccezione durante l'inizializzazione. In questo modo è molto più facile diagnosticare i problemi durante l'avvio del quadrante.
Modifiche alle API
- Abbiamo aggiunto il supporto per avere un nome di componente null in ComplicationProviderInfo, necessario per supportare le versioni precedenti di Wear OS. (I744d2)
- Abbiamo eseguito la migrazione di
androidx.wear.complications.SystemProviders
da Java a Kotlin. (Ia1f8b). - Abbiamo nascosto tutte le classi all'API pubblica presenti in android.support.wearable.complications e abbiamo creato i wrapper corrispondenti in AndroidX dove necessario. (I7bd50)
- Abbiamo rinominato il metodo in
TimeDifferenceComplicationText.Builder
dasetMinimumUnit
asetMinimalTimeUnit
. (I20c64). - Abbiamo reso obbligatorio il passaggio nel costruttore dei campi
contentDescription
diShortTextComplicationData.Builder
,LongTextComplicationData.Builder
eRangedValueComplicationData.Builder
. (I8cb69). - Abbiamo rinominato ComplicationProviderService.onComplicationUpdate in onComplicationRequest e abbiamo incapsulato i parametri ID e tipo di questo metodo in data ComplicationRequest. Il listener corrispondente è stato rinominato ComplicationRequestListener e il suo metodo ComplicationRequestListener.onComplicationData. (Iaf146)
- Abbiamo rimosso il metodo
isActiveAt
daComplicationData
ed esposto il campovalidTimeRange
al suo posto. La chiamata di questo metodo può essere sostituita convalidTimeRange.contains
. (I65936) - Abbiamo modificato la descrizione del metodo ComplicationProviderService.onComplicationActivated in modo da ricevere un ComplicationType anziché un valore int. (Idb5ff)
- Migrazione di ProviderUpdateRequester da Java a Koltin. (Ibce13)
- GlesRender.makeContextCurrent è ora pubblico. È possibile che il codice del quadrante debba effettuare chiamate gl al di fuori del rendering e onGlContextCreated e, dato che potrebbe esserci un contesto sia interattivo che headless, è necessario denominarlo. (I8a43c)
- WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient ora genera ServiceStartFailureException se il quadrante viene generato durante l'init. Inoltre, WatchFaceService ora genera un'eccezione se createWatchFace richiede più di 6 secondi. (I59b2f)
- Abbiamo rimosso la proprietà ID inutilizzata di
GlesTextureComplication
. (I28958) - Il quadrante orologio ora può specificare ContentDescriptionLabels per l'accessibilità tramite la proprietà additionalContentDescriptionLabels di
Renderer
. Oltre al controllo dell'ordine di accessibilità di ContentDescriptionLabels, TraversalIndex è stato aggiunto alle complicazioni. Questa impostazione può essere modificata da un'impostazione ComplicationsUserStyleSetting. (Ib7362) - Espandi la documentazione sulla gestione degli eventi di tocco nel quadrante. (Iaf31e).
Correzioni di bug
EditorSession.getComplicationsPreviewData()
ora restituisce una mappa per ogni complicazione piuttosto che non vuota. Un'istanza di EmptyComplicationData viene utilizzata per le complicazioni vuote. (I1ef7e).
Indossa complicazioni e quadrante versione 1.0.0-alpha12
21 aprile 2021
androidx.wear:wear-*:1.0.0-alpha12
viene rilasciato. La versione 1.0.0-alpha12 contiene questi commit.
Nuove funzionalità
Gli editor dei quadranti devono evidenziare parti del quadrante per capire quale aspetto di uno smartwatch è in fase di configurazione. Abbiamo esteso RenderParameters per consentire l'evidenziazione di stili e complicazioni. È disponibile un nuovo Highlightlayer opzionale che deve essere applicato sul quadrante con una trasparenza alfa (l'API per gli screenshot può eseguire questa operazione per te, oppure fornire autonomamente l'Evidenzialayer per la massima flessibilità). Ad esempio, supponi di avere uno stile che ti consente di configurare l'aspetto delle lancette degli smartwatch, pertanto il renderer nel relativo renderingHighlightlayer può tracciare un contorno intorno a queste lancette.
Per incoraggiare il supporto del fornitore di complicazioni per l'accessibilità, abbiamo reso i campi contentDescription di PhotoImageCompplicationData.Builder, MonochromaticImageComplicationData.Builder e SmallImageComplicationData.Builder obbligatorio del costruttore. ComplicationTapFilter e Complication.createEdgeComplicationBuilder sono state aggiunte per supportare le complicazioni sui bordi (disegnate lungo il bordo dello schermo). Il rendering e i test di successo delle complicazioni sui bordi vengono lasciati al quadrante dell'orologio. I test di hit limite non sono supportati dall'editor companion.
Modifiche alle API
- Prefisso
PROVIDER_
aggiunto alle costanti in SystemProviders. (I1e773) - Abbiamo reso obbligatorio il campo
contentDescription
diPhotoImageComplicationData.Builder
,MonochromaticImageComplicationData.Builder
eSmallImageComplicationData.Builder
da trasmettere 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 dei momenti salienti. Ora è possibile richiedere il rendering delle evidenziazioni per gli stili e per tutte o una singola complicazione. Oltre a CanvasRenderer e GlesRenderer, è disponibile un nuovo metodo renderingHighlightlayer astratto per il rendering delle evidenziazioni richieste dall'editor. Il livello è stato rinominato WatchFacelayer. (Ic2444)ComplicationTapFilter
eComplication.createEdgeComplicationBuilder
sono stati aggiunti per supportare le complicazioni a livello perimetrale. Il rendering e i test di successo delle complicazioni sui bordi vengono lasciati al quadrante dell'orologio. Gli hit test non sono supportati dagli editor. (Ia6604)- Per
DoubleRangeUserStyleSetting
eLongRangeUserStyleSetting
:defaultValue
,maximumValue
eminimumValue
ora sono proprietà kotlin. Inoltre, sono state rimosse le funzioniUserStyleSetting.Option
come toBooleanOption, toCoplicationOptions, toListOption e altre simili. (I52899) - Aggiungi la misura del mento alle proprietà del dispositivo disponibile 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
androidx.wear:wear-*:1.0.0-alpha11
viene rilasciato. La versione 1.0.0-alpha11 contiene questi commit.
Nuove funzionalità
- Abbiamo applicato un tocco di eleganza alle API dei quadranti. La maggior parte delle modifiche è una semplice ridenominazione, ma
InteractiveWatchFaceWcsClient
eInteractiveWatchFaceSysUiClient
sono state unite inInteractiveWatchFaceClient
.
Modifiche alle API
- ContentDescriptionLabel.text è ora un ComplicationText anziché la vecchia libreria di supporto indossabile TimeDependentText. (I80c03)
- La presenza di
SystemProviders.GOOGLE_PAY
su tutti i dispositivi Android R non è garantita, pertanto è stato rimosso dall'elenco. È comunque possibile utilizzare questo provider tramiteDefaultComplicationProviderPolicy
(If01b5) - Per coerenza, abbiamo rinominato ComplicationUpdateCallback in ComplicationUpdateListener. (I61ec7)
- La mappa dei formati dei cavi UserStyle è stata modificata in
Map<String, byte[]>
e per praticità è stata aggiunta una classeUserStyleData
all'API pubblica che ora è utilizzata da wear-watchface-client e wear-watchface-editor. Inoltre, CustomValueUserStyleSetting.CustomValueOption.value ora èbyte[]
anzichéString
. (Iaa103) UserStyleSetting
eUserStyleSetting.Option
ora usano rispettivamenteUserStyleSetting.Id
eUserStyleSetting.Option.Id
per archiviare i propri ID anziché una stringa. (I63f72)InteractiveWatchFaceClient.SystemState
è stato rinominato inWatchUiState
. (I6a4e0).InteractiveWatchFaceWcsClient
eInteractiveWatchFaceSysUiClient
sono stati uniti perché è stato difficile spiegare la divisione delle responsabilità (Iff3fa)- I valori di enumerazione 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 TapType per WatchFace sono stati rinominati per allinearsi a MotionEvents / Compose. (I0dfd0)
- TakeWatchfaceScreenshot è stato rinominato renderWatchFaceToBitmap, mentre takeCompplicationScreenshot è stato rinominato renderCompplicationToBitmap (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 verificare se per qualche motivo la connessione viene interrotta (ad esempio, se il quadrante viene interrotto). (Ie446d)
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync
ora è una funzione di sospensione ed è stato rinominato ingetOrCreateInteractiveWatchFaceClient
. (Ib745d)EditorState.commitChanges
ehasCommitChanges()
sono stati rinominati comeshouldCommitChanges()
. (I06e04).previewComplicationData
è stato rinominato inpreviewComplicationsData
per indicare (solitamente) più di una complicazione nella mappa. (I56c06)InteractiveWatchFaceWcsClient.bringAttentionToComplication
è stato rinominato indisplayPressedAnimation
per coerenza conComplicationsManager.displayPressedAnimation
. (Ic9999)- Tutte le istanze di 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 dispositivo Wear OS, che dovrebbero essere necessarie. (Icc4c0)
- Per coerenza,
EditorServiceClient
è stato sottoposto a refactoring per utilizzare gli ascoltatori anziché gli osservatori. (Iec3a4). - Abbiamo aggiunto un paio di annotazioni
@Px
mancanti aInteractiveWatchFaceSysUiClient
eWatchFaceControlClient
. (I3277a) - Rinominato EditorObservationrCallback in EditorObservationrListener per coerenza. (Ie572d)
- EditorState.watchFaceInstanceId è limitato al livello API Android R e versioni successive e non è più null. (Id52bb)
EditorSession.launchComplicationProviderChooser
è stato rinominato 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
androidx.wear:wear-*:1.0.0-alpha10
viene rilasciato. La versione 1.0.0-alpha10 contiene questi commit.
Nuove funzionalità
- È ora possibile creare oggetti gl aperti (ad esempio, texture) durante WatchFaceService.createWatchFace, poiché GlesRenderer richiede ora una chiamata esplicita a initOpenGLContext, che può essere eseguita all'interno di createWatchFace.
Modifiche alle API
IdAndComplicationData
è stato un po' complicato ed è stato rimosso dall'API pubblica. È stato eseguito il refactoring delle classi e delle interfacce che lo utilizzavano. (I4c928)- Abbiamo sostituito
ReferenceTime
conCountUpTimeReference
eCountDownTimeReference
, che sono più intuitive. (Ib66c6). - Sono state aggiunte alcune annotazioni
@Px
e@ColorInt
mancanti. (I9bbc3). - Ora
Complication.complicationConfigExtras
non è null e il valore predefinito èBundle.EMPTY
. (Iad04f) GlesRenderer
ora richiede di chiamareinitOpenGLContext
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 più necessario. (Ie992f) Complicaiton.setComplicationBounds
non fa più parte dell'API pubblica. Se devi regolare 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
androidx.wear:wear-complications-*:1.0.0-alpha09
e androidx.wear:wear-watchface-*:1.0.0-alpha09
vengono rilasciati. La versione 1.0.0-alpha09 contiene questi commit.
Nuove funzionalità
- L'interfaccia tra l'host WCS/SysUI e il quadrante orologio si è evoluta. Ora un editor può determinare se una modifica dello stile attiverà o disattiverà una complicazione (abilitato = inizialmenteEnabled più eventuali sostituzioni di ComplicationsUserStyleSetting). Inoltre,
EditorService.closeEditor
consente a SysUI di chiudere da remoto un editor per i quadranti, 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
- Gli eventi TraceEvents sono stati aggiunti alle librerie dei quadranti. (I1a141)
ComplicationState
ora ha una nuova proprietàinitiallyEnabled
che è 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é erano lenti, ma lasciamo l'eventuale post-elaborazione fino al chiamante. (Id35af)
- Ora è possibile chiudere da remoto un editor del quadrante tramite
EditorService.closeEditor
. (Ic5aa4). - Aggiunta delle annotazioni con supporto di valori null (Ic16ed)
Versione 1.0.0-alpha08
24 febbraio 2021
androidx.wear:wear-*:1.0.0-alpha08
viene rilasciato. La versione 1.0.0-alpha08 contiene questi commit.
Nuove funzionalità
- Alcuni quadranti sono progettati in base a una o più complicazioni specifiche; a supporto di questa funzionalità, abbiamo aggiunto Complication.Builder#setFixedComplicationProvider che, se impostato su true, impedisce all'utente di modificare la complicazione nello slot.
- Le librerie di quadranti sono prima Kotlin e utilizzano coroutine (ad esempio le funzioni di sospensione). Per gli utenti Java, abbiamo fornito wrapper per ascoltareableFuture per migliorare l'interoperabilità nelle seguenti librerie: wear/wear-watchface-guava, wear/wear-watchface-client-guava e wear/wear-watchface-editor-guava.
Modifiche alle API
- Abbiamo rimosso il supporto per i doppi tocchi sulle complicazioni nel lancio del Selettore provider, questa funzionalità non era comune nei quadranti e complicava l'implementazione di SysUI. (I3ef24).
- I metodi ProviderInfoRetriever possono generare ServiceDisconnettiedException se il binder si chiude inaspettatamente. (Ib2cc4)
- A partire da Android 11, sono presenti limitazioni relative al momento in cui è possibile eseguire ProviderChooser; inoltre, vorremmo che gli editor fossero creati con il nuovo
wear-watchface-editor
per fare in modo che ComplicationHelperActivity venga rimosso dall'API pubblica. (Ib19c1). - Rimuovi i metodi statici ComplicationText a favore degli sviluppatori. (Ibe399)
- Abbiamo introdotto i wrapper guava AscoltaableFuture per i vari metodi sospesi della raccolta di quadranti. (I16b2c).
- Per chiarezza sull'API, abbiamo aggiunto a RenderParameters un costruttore secondario che non richiede una tinta, da utilizzare con LayerModes diversi da
LayerMode.DRAW_OUTLINED
. (I497ea). - In precedenza, ListUserStyleSetting era diverso dall'altro perché aveva un argomento predefinito. Ora tutti i costruttori della sottoclasse StyleSetting utilizzano il valore predefinito per ultimo. (I9dbfd)
- CanvasCompplication è stato modificato in modo da utilizzare un metodo nascosto, che semplifica l'implementazione di una sottoclasse (I5b321)
- Abbiamo rimosso EditorResult a favore di un nuovo EditorService e di
EditorSession.broadcastState()
per trasmettere gli aggiornamenti a un osservatore (in genere SysUI). (Ic4370) - Alcuni quadranti sono basati su una particolare complicazione come parte integrante del quadrante in cui il fornitore non è configurabile dall'utente. A supporto di questa funzionalità, abbiamo aggiunto
Complication.Builder#setFixedComplicationProvider
. (I4509e). - EditorRequest ora specifica il nome del pacchetto anziché ComponenteName perché per SysUI non era comodo cercare il nome della classe dell'editor poiché in realtà ci serve solo il nome del pacchetto. (Ib6814)
Versione 1.0.0-alpha07
10 febbraio 2021
androidx.wear:wear-*:1.0.0-alpha07
viene rilasciato. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- WatchFaceService.createWatchFace è ora una funzione di sospensione, il che significa che il quadrante non deve più bloccare il thread dell'interfaccia utente in attesa dell'IO. Analogamente, wear-watch-editor e wear-complications-data
Modifiche alle API
- Rimuovi la classe PhotoImage e usa direttamente l'icona. (I8a70b)
- Esponi il valore validTimeRange di ComplicationData. (I91366)
- Rendi più espliciti gli attributi simili a quelli delle immagini. (I81700)
- wear-watchface-editor e wear-complications-data sono stati ridisegnati in modo da utilizzare le funzioni di sospensione al posto delle coroutine. Rx java e wrapper compat futuri da seguire. (If3c5f)
- ProviderInfoRetriever ora restituisce PreviewNotAvailableException se requestPreviewComplicationData non può restituire dati di anteprima a causa di problemi di connessione o della mancanza di supporto API. (I4964d)
- WatchFaceControlService::createWatchFaceControlClient è ora una funzione sospesa e getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient si chiama getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClientAsync, che restituisce
Deferred<InteractiveWatchFaceWcsClient>
. che seguono i wrapper compat 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 ha un operatore array e abbiamo aggiunto gli assistenti per la trasmissione a UserStyle.Option. (I35036)
- Abbiamo corretto un bug di marshalling relativo ai cavi UserStyle che modificano alcune API nascoste instabili. (I8be09).
- Abbiamo aggiunto CustomValueUserStyleSetting, che ti consente di archiviare una singola stringa specifica dell'applicazione all'interno di uno UserStyle. Gli editor predefiniti dei quadranti ignorano questo valore. (Ic04d2)
- L'ID istanza non viene trasmesso negli extra intent per R e versioni precedenti di Android WearOS di cui non possiamo eseguire l'upgrade. A supporto di ciò, ora l'ID istantaneo è nullo. (Id8b78)
- EditorRequest ora include l'editor ComponenteName, che è impostato come componente in WatchFaceEditorContract.createIntent (I3cd06)
- L'EditorResult del quadrante ora include un'anteprima ComplicationData per consentire al chiamante di acquisire uno screenshot del quadrante dopo la modifica. (I2c561).
Correzioni di bug
- L'aggiunta di override toString() a UserStyle, UserStyleSetting e UserStyleSchema rende un po' più efficiente l'utilizzo di queste classi. (I9f5ec).
Versione 1.0.0-alpha06
27 gennaio 2021
androidx.wear:wear-*:1.0.0-alpha06
viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.
Nuove funzionalità
- Abbiamo introdotto un nuovo editor wear/wear-face-watch della raccolta che consente agli sviluppatori di quadranti e potenzialmente agli OEM di creare un editor di stile e complicazioni. SysUI invierà un intent al quadrante che utilizzerà la nuova classe EditorSession per accedere ai dettagli del quadrante e registrare il risultato tramite Activity.setWatchRequestResult. A supporto di ciò, abbiamo aggiunto ProviderInfoRetriever.requestPreviewComplicationData, che consente agli editor dei quadranti di richiedere l'anteprima di ComplicationData. Il vantaggio dell'anteprima ComplicationData è diverso dai dati in tempo reale. Non devi preoccuparti di mostrare finestre di dialogo di autorizzazione durante il rendering dell'editor (tieni presente che se un utente seleziona un provider con un'autorizzazione, gli verrà comunque chiesto di concedere l'autorizzazione).
Modifiche alle API
- Il campo ComplicationProviderInfo ora ha un campo per ComponenteName del provider. Il supporto per questo campo verrà aggiunto a WearOS in un secondo momento e nel frattempo il campo sarà nullo. (Id8fc4)
- Abbiamo aggiunto ProviderInfoRetriever.requestPreviewComplicationData che consente agli editor dei quadranti di richiedere l'anteprima di ComplicationData. Questo è utile perché le complicazioni in tempo reale potrebbero richiedere autorizzazioni e ora puoi visualizzare i dati in anteprima per le complicazioni non attive. (I2e1df).
- ComplicationManager è ora un parametro facoltativo del costruttore WatchFace e gli argomenti sono stati riordinati per consentire questa operazione. (I66c76)
- Abbiamo aggiunto alle complicazioni un bundle facoltativo che, se impostato, viene unito all'intent inviato per avviare l'attività del selettore del provider. (Ifd4ad).
- Abbiamo aggiunto una nuova libreria
wear-watchface-editor
per supportare gli editor di quadranti e ospitati su SysUi. SysUI lancerà questi editor inviando un intent. Il servizio relativo all'attività dei quadranti può utilizzare la nuova classe EditorSession per accedere ai dettagli del quadrante e registrare il risultato tramite Activity.setWatchRequestResult. (I2110d) - LayerMode.DRAW_HIGHLIGHTED ora si chiama LayerMode.DRAW_OUTLINED, mentre RenderParameters.highlightComplicationId ora si chiama RenderParameters.selectedComplicationId che traccia un'evidenziazione sulla complicazione specificata oltre a un contorno. (I90a40)
- WatchFaceControlClient.getOrCreateBackgroundServiceBackedInteractiveWatchFaceWcsClient può ora risolvere con una ServiceStartFailureException se il servizio si arresta in attesa della creazione del quadrante. (I0f509)
- EditorSession.complicationPreviewData è ora il valore AscoltaableFuture perché il recupero di questi dati è un processo asincrono. (Iead9d)
Correzioni di bug
- Stiamo rimuovendo i campi inutilizzati da ComplicationOverlay, che rimangono attivati e complicationBounds. (I17b71)
Versione 1.0.0-alpha05
13 gennaio 2021
androidx.wear:wear-*:1.0.0-alpha05
viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.
Nuove funzionalità
I quadranti spesso supportano una serie di configurazioni di complicazioni con un numero variabile di complicazioni mostrate. Per semplificare la configurazione, ora supportiamo le complicazioni inizialmente disattivate chiamando setEnabled(false) sullo strumento di creazione. Queste impostazioni possono essere attivate in un secondo momento tramite ComplicationsUserStyleSetting.
Modifiche alle API
- ComplicationHelperActivity ora accetta
Collection<ComplicationType>
anziché un array int, che ne semplifica l'utilizzo. (I1f13d). - Ora
ProviderInfoRetriever.retrieveProviderInfo
restituisce correttamenteListenableFuture<ProviderInfo[]>
. (If2710) - Ora puoi creare una complicazione inizialmente disattivata 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 disegnabili. Viene utilizzato dalle API per gli screenshot. (I34d4a).
Versione 1.0.0-alpha04
16 dicembre 2020
androidx.wear:wear-*:1.0.0-alpha04
viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- La raccolta di quadranti Wear ora supporta i limiti di impostazione per tipo. Ad esempio, puoi passare a un riquadro di delimitazione ampio per ComplicationType.Long_TEXT mentre utilizzi un riquadro di delimitazione più piccolo per altri tipi.
Modifiche alle API
- Ora le complicazioni utilizzano ComplicationBounds, che aggrega un
Map<ComplicationType, RectF>
al fine di supportare le dimensioni per tipo di complicazione. (I1ebe7) - RenderParameters ora consente di specificare la tinta di evidenziazione da utilizzare negli screenshot. (Iff42b).
- Ad eccezione dei limiti, ora devi utilizzare ComplicationsUserStyleSetting per modificare le complicazioni, in modo da garantire che il sistema operativo sia sincronizzato. (I8dc5d)
- Ora il renderer è una classe protetta. Ciò significa che CanvasRenderer e GlesRenderer ora sono classi interne di Renderer. (Iab5d4, b/173803230).
- CanvasComplicationDrawable.drawHighlight è stato rinominato in disegnoOutline. ObservableWatchData ora ha alcune annotazioni UiThread mancanti. ScreenState è stato ora completamente rimosso da WatchState. (If1393)
- Il livello API minimo per il quadrante indossabile è ora 25. Tieni presente che il supporto del canvas hardware richiede il livello API 26 o versioni successive. (Ic9bbd).
- InteractiveWatchFaceWcsClient ora dispone di un helper getComplicationIdAt. (I05811)
- Il livello API per il client Wear-watching è stato ridotto a 25, tuttavia le API degli screenshot richiedono il livello API 27. (Id31c2)
Correzioni di bug
- Ora viene visualizzato il ComplicationType attuale della complicazione in ComplicationState. (I9b390)
- InteractiveWatchFaceWcs ora ha un metodo "bringAttentionToComplication per evidenziare brevemente la complicazione specificata". (I6d31c).
InteractiveWatchFaceWcsClient#setUserStyle
ora ha un sovraccarico che accetta Map<string, string=""> che potrebbe evitare un ulteriore round trip IPC necessario per creare UserStyle. (I24eec)</string,>
Versione 1.0.0-alpha03
2 dicembre 2020
androidx.wear:wear-*:1.0.0-alpha03
viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.
Nuove funzionalità
La classe Complicazione ora ha una proprietà compicationData che consente ai quadranti di osservare le modifiche di ComplicationData. Ciò consente di modificare le dimensioni della complicazione in base al tipo.
Le frequenze fotogrammi variabili sono ora supportate dall'assegnazione a Renderer.interactiveDrawModeUpdateDelayMillis. Per i quadranti che eseguono brevi animazioni ogni secondo, questo può portare a un buon risparmio energetico, consentendo di attivare la modalità di sospensione quando non si attiva l'animazione.
Modifiche alle API
BACKGROUND_IMAGE
è stato rinominato inPHOTO_IMAGE
insieme ai corsi correlati. Questo tipo di complicazione non viene utilizzato esclusivamente per gli sfondi, pertanto la modifica del nome. (I995c6)- defaultComplicationProviderPolicy annotato correttamente 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)
- La complicazione ora dispone di compicationData, che consente ai quadranti di osservare le modifiche di ComplicationData. La complicazione ha anche una nuova chiamata isActiveAt che può essere utilizzata per determinare se il rendering deve essere eseguito alla data/ora indicata. (Ic0e2a).
- Il campo
SharedMemoryImage
vuoto non si trova più nell'API pubblica. (I7ee17). WatchFace.overridePreviewReferenceTimeMillis
ora ha un'annotazione IntRange e getter e setter hanno nomi coerenti. (Ia5f78)- Il campo
Complication.Builder
viene ora creato tramiteComplication.createRoundRectComplicationBuilder
oComplication.createBackgroundComplicationBuilder
per chiarezza (I54063) - È stato aggiunto WatchFace.TapListener che consente di osservare i tocchi non consumati da complicazioni da parte del quadrante. (Ic2fe1, b/172721168).
- WatchFace ora supporta frequenze fotogrammi variabili assegnandole a
Renderer.interactiveDrawModeUpdateDelayMillis
. Ciò contribuisce a preservare la durata della batteria attivando la modalità di sospensione quando non è attiva l'animazione. (I707c9) - WatchFace.Builder non è più necessario e invalidate() e hybridUpdateRateMillis sono stati spostati nel renderer. (I329ea).
- Per una migliore interoperabilità Java, i getter per le proprietà booleane in WatchState (I6d2f1) sono rinominati
- TapListener rinominato TapCallback e InvalidateCallback in InvalidateListener per coerenza. (I9414e)
- Le opzioni per lo stile del quadrante Wear 2.0 sono state spostate in una categoria dedicata per una maggiore chiarezza. I setter di WatchFace.Builder ora hanno getter di classe simmetrici per WatchFace. (Iefdfc)
- Sono stati aggiunti InteractiveWatchFaceWcsClient e
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
, che ricevono un'istanza esistente o la crea una volta che il servizio Wallaper si è connesso e ha creato il motore. (Id666e) - WatchFaceControlClient è ora un'interfaccia che consente di eseguire dei test in modo simulato. (I875d9)
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl e InteractiveWatchFaceWcsClient sono ora interfacce che facilitano i test. (I7cdc3)
- Annotazioni aggiunte ai metodi in
wear-watchface-complications-rendering
(I0d65c)
Correzioni di bug
- Rimuovi la forma dello schermo da DeviceConfig, che stava duplicando
android.content.res.Configuration#isScreenRound()
(Ifadf4) - Il valore
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient
è stato modificato in modo da accettare unMap<String, String>
anziché unUserStyle
perché è difficile creare unUserStyle
senza conoscere lo schema, che potrai ottenere solo dopo la creazione del client. (Iea02a). - Correggi
InteractiveWatchFaceWcsClient
per utilizzareComplicationState
anziché il formato dei cavi. (Icb8a4) UserStyleSettings
è ora un corso bloccato perché gli editor dei quadranti comprendono solo i corsi integrati. (I2d797)
Versione 1.0.0-alpha02
11 novembre 2020
androidx.wear:wear-*:1.0.0-alpha02
viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.
Modifiche alle API
- Il nome di
ComplicationDetails
ora si chiamaComplicationState
ed è incluso correttamente e gli utilizzi del supporto per dispositivi indossabili@ComplicationData.ComplicationType
sono stati migrati ad AndroidxComplicationType
. (I4dd36). - Aggiungi un parametro
highlightedComplicationId
facoltativo a RenderParameters che consente di richiedere l'evidenziazione di una singola complicazione negli screenshot. (I66ce9) ComplicationProviderService
per utilizzare la nuova API delle complicazioni dello stile per la coerenza (Id5aea)- Ora
getPreviewReferenceTimeMillis
riceve i tempi di riferimento daDeviceConfig
. (I779fe) - Per semplificare la superficie API Renderer, puoi usare
SurfaceHolder.Callback
per osservare le modifiche. (I210db) CanvasComplicationRenderer
non si estende daRenderer
, rinominandolo per 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
androidx.wear:wear-complications-*:1.0.0-alpha01
e androidx.wear:wear-watchface-*:1.0.0-alpha01
vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- Sono state rimosse alcune cose che non intendevamo esporre nell'API pubblica. (I41669)
- Crea 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)
- Funzioni con valori restituiti booleani che devono essere preceduti da "is" anziché "get" (If36ff)
- Il consiglio dell'API è di evitare l'uso della classe protetta, in modo che questa classe sia stata sottoposta a refactoring per introdurre i parametri tramite il costruttore. (I61644)
- Rinomina setBackgroundCompplication per maggiore chiarezza. (I96fe3).
- Utilizzare le proprietà Kotlin per ComplicationDrawable isHighlighted e dati (I4dcc8)
- Al posto di ComplicationRenderer.InvalidateCallback, aggiungiamo Complication#invalidate() (I4f4c6)
- Queste API sono in fase di ritiro in WearableSupport e vengono rimosse qui. (Ib425c)
- Abbiamo rinominato alcuni metodi dello strumento per la creazione di quadranti orologio per enfatizzare la loro natura tradizionale di Wear 2.0. (Idb775)
- Prima API beta candidata per il quadrante Wear/Wear (Id3981)
- Prima versione monitorata dell'API. (Ie9fe6).
- Occultamento corretto di ComplicationDrawable.BorderStyle IntDef e passaggio a ComplicationStyle per coerenza. (I27f7a).
- Aggiunta delle annotazioni mancanti per i metodi ComplicationStyle (I838fd)
- Questa libreria non ha una piattaforma API pubblica (I88e2b)
- Tutte le classi Opzione della categoria di stile sono ora corrette e definitive. (Ib8323)
- Prima versione monitorata dell'API. (I27c85).
Correzioni di bug
- È stato modificato ComplicationProviderService per avere un metodo getComplicationPreviewData esplicito. (I4905f)
- Il controllo lint API per MissingGetterMatchingBuilder è abilitato per androidx (I4bbea, b/138602561)
- Rinomina rendering-complicazione-usura. (Ifea02).
- I nomi visualizzati delle categorie di stile sono ora CharSequences (I28990)
- Sostituzione di Override con Overlay per abbinare le convenzioni di denominazione correnti di temi e stili. (I4fde9).
- È stato rinominato UserStyle#getOptions per maggiore chiarezza. (I695b6)
Versione 1.2.0
Versione 1.2.0
15 settembre 2021
androidx.wear:wear:1.2.0
viene rilasciato. La versione 1.2.0 contiene questi commit.
Modifiche importanti dalla versione 1.1.0
È stato aggiunto il componente CurvedText per scrivere facilmente un testo curvo che segue la curvatura del cerchio più grande che può essere inscritto nella vista. Esempio di utilizzo:
<androidx.wear.widget.CurvedText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="example curved text" app:anchorAngleDegrees="180" app:anchorPosition="center" app:clockwise="false" style="@android:style/TextAppearance.Large" />
Aggiunto il contenitore ArcLayout per disporre gli elementi secondari uno alla volta su un arco in senso orario o antiorario. I relativi elementi secondari possono essere sia widget Android standard sia widget "curvi" che implementano l'interfaccia
ArcLayout.Widget
. (I536da) Un 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, DismissibleFrameLayout, che gestisce la chiusura del pulsante Indietro e/o la funzionalità di scorrimento per ignorare, destinato all'utilizzo all'interno di un'attività. Devi aggiungere almeno un listener per agire in base a un'azione di chiusura. In genere, un listener rimuove una visualizzazione contenente o un frammento dall'attività corrente. setScorriIgnoraible(boolean) e setBackButtonDismissible(boolean) per il controllo diretto sulle funzionalità. Questo nuovo layout ha lo scopo di sostituire l'esistente SwipeDismissFrameLayout.
È stato aggiunto il supporto per indicare che un'attività può essere "ripristinata automaticamente" quando il dispositivo esce dalla modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata di WearableSupportLibrary. (I336ab)
È stata eseguita la migrazione della classe WearableCalendarContract dalla raccolta di assistenza per dispositivi indossabili. Questa API fornisce un sottoinsieme dei dati disponibili tramite CalendarContract, ma viene sincronizzato automaticamente con i dispositivi indossabili. (I6f2d7).
È stata aggiunta una nuova API
WearTypeHelper
inandroidx.wear.utils
per determinare se il dispositivo indossabile è destinato alla Cina. (Ib01a9)Sono state aggiunte funzioni di accessibilità a
androidx.wear.widget.ConfirmationOverlay
che leggono i messaggi, se impostati, e la descrizione dell'animazione. (I524dd)È stato corretto il bug che causava l'arresto anomalo diConfirmationActivity se non veniva fornito alcun messaggio. (Ie6055)
È stato corretto il bug per cui gli elementi RecyclerView a scorrimento orizzontale causavano la visualizzazione di
WearableDrawerLayout
in tutte le interazioni. (I24c7f)
Versione 1.2.0-rc01
1° settembre 2021
androidx.wear:wear:1.2.0-rc01
viene rilasciato senza modifiche dall'ultima versione beta. La versione 1.2.0-rc01 contiene questi commit.
Versione 1.2.0-beta01
18 agosto 2021
androidx.wear:wear:1.2.0-beta01
viene rilasciato. La versione 1.2.0-beta01 contiene questi commit.
Correzioni di bug
- Risolvi il bug che ha causato l'arresto anomalo diConfirmationActivity se non è stato fornito alcun messaggio. (Ie6055)
Versione 1.2.0-alpha13
4 agosto 2021
androidx.wear:wear:1.2.0-alpha13
viene rilasciato. La versione 1.2.0-alpha13 contiene questi commit.
Modifiche alle API
- Rinominato
WearTypeHelper.isChinaDevice
inWearTypeHelper.isChinaBuild
. (I47302)
Correzioni di bug
- Abbiamo aggiunto funzioni di accessibilità a
androidx.wear.widget.ConfirmationOverlay
che, se impostate, leggeranno i messaggi seguiti dalla descrizione dell'animazione. (I524dd)
Versione 1.2.0-alpha12
21 luglio 2021
androidx.wear:wear:1.2.0-alpha12
viene rilasciato. La versione 1.2.0-alpha12 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto una nuova API
WearTypeHelper
inandroidx.wear.utils
per determinare se il dispositivo indossabile è destinato alla Cina. (Ib01a9)
Versione 1.2.0-alpha11
30 giugno 2021
androidx.wear:wear:1.2.0-alpha11
viene rilasciato. La versione 1.2.0-alpha11 contiene questi commit.
Correzioni di bug
- È stato corretto il bug per cui gli elementi RecyclerView a scorrimento orizzontale causavano la visualizzazione di
WearableDrawerLayout
in tutte le interazioni. (I24c7f)
Versione 1.2.0-alpha10
2 giugno 2021
androidx.wear:wear:1.2.0-alpha10
viene rilasciato. La versione 1.2.0-alpha10 contiene questi commit.
Nuove funzionalità
- Alpha10 migliora il supporto dell'accessibilità in Curved Text e ArcLayouts. Inoltre, viene aggiunto un piccolo rinnovo del nome in DismissibleFrameLayout per chiarire meglio l'API.
Modifiche alle API
- Abbiamo rinominato i seguenti metodi in
DismissibleFrameLayout
(Ib195e):Callback#onDismissed
->Callback#onDismissedFinished
isSwipeDismissible
->isDismissableBySwipe
isBackButtonDismissible
->isDismissableByBackButton
- I seguenti metodi sono stati finalizzati (Ib195e):
setBackButtonDismissible
setSwipeDismissible
registerCallback
unregisterCallback
Correzioni di bug
- Utilizza i contenuti di CurvedTextView su TalkBack. (I05798)
- Migliore accessibilità per le viste normali in ArcLayout. (I4418d)
Versione 1.2.0-alpha09
18 maggio 2021
androidx.wear:wear:1.2.0-alpha09
viene rilasciato. La versione 1.2.0-alpha09 contiene questi commit.
Modifiche alle API
- È stata aggiunta una nuova funzione
CurvedTextView.setTypeface()
(simile a quella diTextView
) per impostare il tipo di carattere del testo e lo stile grassetto/corsivo. (I4653c) - Rinominato
WearArcLayout
inArcLayout
,WearCurvedText
inCurvedText
eWearArcLayout.ArcLayoutWidget
inArcLayout.Widget
. (I6e5ce)- Il giorno
ArcLayout.Widget
è stato rinominatogetThicknessPx
ingetThickness
. - Le costanti di allineamento verticale su
ArcLayout.LayoutParams
vengono ora chiamate a partire daVERTICAL_ALIGN_
(anziché dalla precedenteVALIGN_
)
- Il giorno
- Il giorno
CurvedTextView
, i metodisetMinSweepDegrees
esetMaxSweepDegrees
sono stati sostituiti dasetSweepRangeDegrees
(I7a9d9)
Versione 1.2.0-alpha08
5 maggio 2021
androidx.wear:wear:1.2.0-alpha08
viene rilasciato. La versione 1.2.0-alpha08 contiene questi commit.
Modifiche alle API
- Per migliorare la chiarezza del codice, abbiamo aggiunto le annotazioni
@FloatRange
ad alcuni parametri di angolo e tipi di resi. (I430dd) - Nell'interfaccia
WearArcLayout.ArcLayoutWidget
, il metodoinsideClickArea
ora si chiama isPointInsideClickArea. (Ia7307)
Versione 1.2.0-alpha07
24 marzo 2021
androidx.wear:wear:1.2.0-alpha07
viene rilasciato. La versione 1.2.0-alpha07 contiene questi commit.
Correzioni di bug
- Correzione degli errori relativi a elementi secondari non curvi all'interno di WearArcLayout causati dall'utilizzo di dimensioni dello schermo con altezza superiore alla larghezza. Questi bambini non curvi ora sono posizionati correttamente all'interno di un arco su tutti i tipi di schermo.
Versione 1.2.0-alpha06
27 gennaio 2021
androidx.wear:wear:1.2.0-alpha06
viene rilasciato. La versione 1.2.0-alpha06 contiene questi commit.
Modifiche alle API
- Esegui la migrazione della libreria Attività continue in una nuova libreria secondaria: Abbigliamento continuo. I corsi ora sono disponibili nel pacchetto androidx.wear.on Contatti (I7c029)
- Esegui la migrazione del corso WearableCalendarContract da Wearable Support Library ad AndroidX. Questa API fornisce un sottoinsieme dei dati disponibili tramite CalendarContract, ma viene sincronizzato automaticamente con i dispositivi indossabili. (I6f2d7).
Correzioni di bug
- Disattiva per impostazione predefinita la funzionalità per ignorare il pulsante Indietro in Ignorabile FrameLayout, poiché lo scorrimento per ignorare rimane il metodo principale per tornare allo 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
androidx.wear:wear:1.2.0-alpha05
viene rilasciato. La versione 1.2.0-alpha05 contiene questi commit.
Correzioni di bug
- Aggiorna il codice javadoc della classe AmbientModeSupport per fornire snippet di esempio per dimostrare meglio l'uso generale di questa classe.
Versione 1.2.0-alpha04
16 dicembre 2020
androidx.wear:wear:1.2.0-alpha04
viene rilasciato. La versione 1.2.0-alpha04 contiene questi commit.
Modifiche alle API
- È stato aggiunto il supporto per indicare che un'attività può essere "ripristinata automaticamente" quando il dispositivo esce dalla modalità Ambient nella classe AmbientModeSupport. Questa funzionalità era precedentemente disponibile nella classe WearableActivity deprecata di WearableSupportLibrary. (I336ab)
- Attività in corso
- Ora è possibile impostare una categoria durante la creazione di un'Attività continua, ad esempio
OngoingActivitiy.Builder.getCategory(String)
- OnheadingActivityData ora ha un timestamp che indica quando è stata creata l'OnheadingActivity:
OngoingActivityData.getTimestamp()
- (I91cb4).
- Ora è possibile impostare una categoria durante la creazione di un'Attività continua, ad esempio
- Aggiunto il supporto per l'impostazione dei margini sugli elementi secondari di WearArcLayout modificando i parametri di layout in modo da estendere MarginLayoutParams, ad esempio WearArcLayout.LayoutParams estende android.view.ViewGroup.MarginLayoutParams. (I2cd88)
- Cambia il tipo di ancoraggio predefinito di WearCurvedTextView impostandolo su
WearArcLayout.ANCHOR_CENTER
(eraWearArcLayout.ANCHOR_START
). Ciò semplifica il contratto tra il layout ad arco e il testo curvo poiché per impostazione predefinita il testo curvo si disegna centrando sulla x nella parte superiore e il layout dell'arco principale può ruotarlo dove deve essere. (I105ff)
Versione 1.2.0-alpha03
2 dicembre 2020
androidx.wear:wear:1.2.0-alpha03
viene rilasciato. La versione 1.2.0-alpha03 contiene questi commit.
Nuove funzionalità
Un nuovo contenitore di layout DismissibleFrameLayout, che gestisce l'eliminazione del pulsante Indietro e/o l'operazione di scorrimento per ignorare, destinato all'utilizzo all'interno di un'attività. Devi aggiungere almeno un listener per agire in base a un'azione di chiusura. In genere, un listener rimuove una visualizzazione contenente o un frammento dall'attività corrente. setScorriIgnoraible(boolean) e setBackButtonDismissible(boolean) per il controllo diretto sulle funzionalità. Questo nuovo layout ha lo scopo di sostituire l'esistente SwipeDismissFrameLayout.
I widget curvi ora gestiscono gli eventi tocco. I normali widget all'interno di WearArcLayout riceveranno tutti gli eventi tocco, mappati allo spazio delle loro coordinate. WearCurvedTextView (all'interno o all'interno di WearArcLayout o meno) può impostare i gestori YAML e onLongClick.
Le classi di attività in corso ora sono versionidParcelables invece di utilizzare la serializzazione/deserializzazione personalizzata. L'icona statica e l'intent touch ora sono obbligatori.
Modifiche alle API
- L'attributo "sweepDegrees" per WearCurvedTextView è separato in minSweepDegrees e maxSweepDegrees per dare un layout più flessibile di questo widget.
Versione 1.2.0-alpha02
11 novembre 2020
androidx.wear:wear:1.2.0-alpha02
viene rilasciato. La versione 1.2.0-alpha02 contiene questi commit.
In questa release è stata aggiunta per la prima volta la nuova "API On Go Activity". Questa API può essere utilizzata dagli sviluppatori per segnalare che è in corso un'attività a lunga esecuzione, come un allenamento di fitness o una sessione di riproduzione multimediale. Consente agli sviluppatori di fornire aggiornamenti periodici dello stato, ad esempio "distanza e tempo di corsa" o "riproduzione della traccia attuale" da visualizzare sul quadrante o in Avvio app. Questa funzionalità è destinata ai dispositivi futuri su cui è attiva la funzionalità relativa all'attività in corso.
Modifiche alle API
- Nuova API per le attività in corso, una soluzione no-op per i "dispositivi non supportati". (I69a31)
Versione 1.2.0-alpha01
28 ottobre 2020
androidx.wear:wear:1.2.0-alpha01
viene rilasciato. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- Aggiunto il componente WearCurvedTextView per scrivere facilmente un testo curvo che segue la curvatura del cerchio più grande che può essere inscritto nella vista. Esempio di utilizzo:
<androidx.wear.widget.WearCurvedTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="example curved text"
app:anchorAngleDegrees="180"
app:anchorPosition="center"
app:clockwise="false"
style="@android:style/TextAppearance.Large"
/>
- Aggiunto il container WearArcLayout per disporre gli elementi secondari uno alla volta su un arco in senso orario o antiorario. I relativi elementi secondari possono essere sia widget Android standard o widget "curvi" che implementano l'interfaccia ArcLayoutWidget. Esempio di utilizzo:
<androidx.wear.widget.WearArcLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:anchorPosition="center">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_launcher"
/>
<androidx.wear.widget.WearCurvedTextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Curved Text"
style="@android:style/TextAppearance.Small"
android:padding="2dp"
/>
</androidx.wear.widget.WearArcLayout>
(I536da)
Wear-Input 1.2
Versione 1.2.0-alpha02
29 settembre 2021
androidx.wear:wear-input:1.2.0-alpha02
e androidx.wear:wear-input-testing:1.2.0-alpha02
vengono rilasciati. La versione 1.2.0-alpha02 contiene questi commit.
Modifiche alle API
- Il nome
disallowEmoji
è stato cambiato insetEmojisAllowed
inWearableRemoteInputExtender
per l'utilizzo per impostare se mostrare o meno l'opzione per disegnare emoji. (I28393)
Versione 1.2.0-alpha01
15 settembre 2021
androidx.wear:wear-input:1.2.0-alpha01
e androidx.wear:wear-input-testing:1.2.0-alpha01
vengono rilasciati. La versione 1.2.0-alpha01 contiene questi commit.
Modifiche alle API
- Tutte le costanti di posizione dei pulsanti esposte dal giorno
WearableButtons
. (Ibb12c). - È stata aggiunta la classe
WearableRemoteInputExtender
che può essere utilizzata per aggiungere extra specifici per Wear ad android.app.RemoteInput. (I01903)
Wear-Input 1.1.0
Versione 1.1.0
18 agosto 2021
androidx.wear:wear-input:1.1.0
e androidx.wear:wear-input-testing:1.1.0
vengono rilasciati. La versione 1.1.0 contiene questi commit.
Modifiche importanti dalla versione 1.0.0
RemoteInputIntentHelper
aggiunto.- Questa classe può essere utilizzata per creare un intent RemoteInput. Questa opzione può essere utilizzata per richiedere l'input degli utenti in un'attività personalizzabile.
Versione 1.1.0-rc01
4 agosto 2021
androidx.wear:wear-input:1.1.0-rc01
e androidx.wear:wear-input-testing:1.1.0-rc01
vengono rilasciati. La versione 1.1.0-rc01 contiene questi commit.
Nessuna modifica all'API dal giorno androidx.wear:wear-input:1.1.0-beta01
e androidx.wear:wear-input-testing:1.1.0-beta01
Versione 1.1.0-beta01
21 luglio 2021
androidx.wear:wear-input:1.1.0-beta01
e androidx.wear:wear-input-testing:1.1.0-beta01
vengono rilasciati senza modifiche dal giorno 1.1.0-alpha03
. La versione 1.1.0-beta01 contiene questi commit.
Versione 1.1.0-alpha03
30 giugno 2021
androidx.wear:wear-input:1.1.0-alpha03
e androidx.wear:wear-input-testing:1.1.0-alpha03
vengono rilasciati. La versione 1.1.0-alpha03 contiene questi commit.
Correzioni di bug
- Risolto il bug per cui gli intent RemoteInput, a cui erano stati aggiunti
RemoteInput
tramiteRemoteInputHelper.putRemoteInputsExtra
, venivano rifiutati.
Versione 1.1.0-alpha02
18 maggio 2021
androidx.wear:wear-input:1.1.0-alpha02
e androidx.wear:wear-input-testing:1.1.0-alpha02
vengono rilasciati. La versione 1.1.0-alpha02 contiene questi commit.
Modifiche alle API
- I metodi di
RemoteInputIntentHelper
che vengono utilizzati per ottenere o inserire extra che rappresentano etichette di titolo, di annullamento, di conferma e in corso ora utilizzanoCharSequence
anzichéString
per queste etichette. (I0e71f)
Versione 1.1.0-alpha01
27 gennaio 2021
androidx.wear:wear-input:1.1.0-alpha01
e androidx.wear:wear-input-testing:1.1.0-alpha01
vengono rilasciati. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
- Esegui la migrazione della classe RemoteInputIntent da Wearable Support Library ad AndroidX. La classe migrata viene rinominata RemoteInputIntentHelper, che fornisce funzioni helper per supportare gli input remoti tramite l'avvio di un intent. (I47cee)
Wear-Input 1.0.0
Versione 1.0.0
2 dicembre 2020
androidx.wear:wear-input:1.0.0
e androidx.wear:wear-input-testing:1.0.0
vengono rilasciati. La versione 1.0.0 contiene questi commit.
Questa release è identica a 1.0.0-rc01
.
Funzionalità principali della versione 1.0.0
Migrazione della funzionalità WearableButtons dalla libreria di assistenza Wearable a Jetpack.
È stato aggiunto
androidx.wear.input.test.TestWearableButtonsProvider
che implementaandroidx.wear.input.WearableButtonsProvider
per facilitare i test delle applicazioni sviluppate con la libreriaandroidx.wear:wear-input
.
Versione 1.0.0-rc01
11 novembre 2020
androidx.wear:wear-input:1.0.0-rc01
e androidx.wear:wear-input-testing:1.0.0-rc01
vengono rilasciati. La versione 1.0.0-rc01 contiene questi commit.
Questa release è identica a 1.0.0-beta01
.
Versione 1.0.0-beta01
28 ottobre 2020
androidx.wear:wear-input:1.0.0-beta01
e androidx.wear:wear-input-testing:1.0.0-beta01
vengono rilasciati senza modifiche dal giorno 1.1.0-alpha01
. La versione 1.0.0-beta01 contiene questi commit.
Wear-Input-Testing versione 1.0.0-alpha01
14 ottobre 2020
androidx.wear:wear-input-testing:1.0.0-alpha01
viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.
Modifiche alle API
- È stato aggiunto
androidx.wear.input.test.TestWearableButtonsProvider
che implementaandroidx.wear.input.WearableButtonsProvider
per facilitare i test delle applicazioni sviluppate con la libreriaandroidx.wear:wear-input
. (I0ed0c)
Versione Wear-Input 1.0.0-alpha01
2 settembre 2020
androidx.wear:wear-input:1.0.0-alpha01
viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
Migrazione della funzionalità WearableButtons dalla libreria di assistenza Wearable a Jetpack. Forniremo ulteriore supporto per i test nella libreria androidx.wear:wear-input-testing
nella prossima release di Jetpack.
Versione 1.1.0
Versione 1.1.0
14 ottobre 2020
androidx.wear:wear:1.1.0
viene rilasciato. La versione 1.1.0 contiene questi commit.
Importanti modifiche dalla versione 1.0.0
- È stato aggiunto un prefisso
layout_
all'attributo boxedEdges (oralayout_BoxedEdges
) perBoxInsetLayout
per rispettare la convenzione di denominazione Android. Verrà rimosso l'errore linter in Android Studio per questi attributi. (I4272f) - È stato aggiunto un valore facoltativo
EXTRA_ANIMATION_DURATION_MILLIS
aConfirmationActivity
per consentire l'intervallo di tempo durante il quale viene visualizzata la finestra di dialogo di conferma. (adb83ce, b/143356547). - Aggiornato
WearableActionDrawView
per ritardare il gonfiaggio del riquadro a scomparsa delle azioni fino alla prima apertura del riquadro a scomparsa. (I01026, b/163870541)
Versione 1.1.0-rc03
2 settembre 2020
androidx.wear:wear:1.1.0-rc03
viene rilasciato. La versione 1.1.0-rc03 contiene questi commit.
Correzioni di bug
- È stato risolto il problema a causa del quale il riquadro a scomparsa delle azioni non mostrava i contenuti all'apertura. (I01026, b/163870541)
Versione 1.1.0-rc02
24 giugno 2020
androidx.wear:wear:1.1.0-rc02
viene rilasciato. La versione 1.1.0-rc02 contiene questi commit.
Correzioni di bug
- È stato aggiunto un prefisso
layout_
all'attributo boxedEdges (oralayout_boxedEdges
) perBoxInsetLayout
per 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
androidx.wear:wear:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Modifiche alle API
- È stato aggiunto un valore facoltativo
EXTRA_ANIMATION_DURATION_MILLIS
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
- Aggiornato
WearableActionDrawView
per ritardare il gonfiaggio del riquadro a scomparsa delle azioni fino alla prima apertura del riquadro a scomparsa. (5cd32f7)