Push del quadrante

Wear OS 6 introduce una nuova API, Watch Face Push, che offre opportunità per scenari di pubblicazione di quadranti più avanzati.

Identificare quando utilizzare la funzionalità Push del quadrante

Watch Face Push è un'API su Wear OS che consente allo sviluppatore di aggiungere, aggiornare o rimuovere direttamente i quadranti. Non è necessaria per lo sviluppo di quadranti standard.

I quadranti utilizzati con Watch Face Push devono essere scritti utilizzando il formato Watch Face. Potrebbero essere inclusi i quadranti progettati utilizzando Watch Face Studio o qualsiasi altro strumento che produca quadranti che utilizzano Watch Face Format.

Sebbene l'API Watch Face Push possa essere potenzialmente utilizzata in diversi modi, la tabella seguente deve essere utilizzata come guida per i casi d'uso principali:

Storytelling Soluzione consigliata Complessità
Voglio creare singoli quadranti e pubblicarli. Utilizza Watch Face Format, direttamente o tramite uno strumento come Watch Face Studio, e pubblicali su Google Play. Bassa
Voglio creare un'app per smartphone che consenta agli utenti di selezionare i quadranti da una raccolta selezionata o di progettare e personalizzare i quadranti per l'installazione direttamente sul loro smartwatch Wear OS. Crea un'app, sia per lo smartwatch che per lo smartphone, utilizzando l'API Watch Face Push sullo smartwatch. Alto

Finalità

Il caso d'uso canonico per l'API Watch Face Push è la creazione di un'app di marketplace. Da questa app, gli utenti possono selezionare i quadranti da una raccolta selezionata sul proprio smartphone e controllare direttamente l'installazione di questi quadranti sul proprio smartwatch connesso a internet.

Considerazioni

Per informazioni dettagliate sulla creazione dei quadranti, consulta le indicazioni relative a Watch Face Format: i quadranti di cui è stato eseguito il deployment utilizzando Watch Face Push sono normali quadranti Watch Face Format.

Quando crei il quadrante, tieni presente le seguenti considerazioni.

Nomi dei pacchetti

I quadranti installati utilizzando Watch Face Push devono essere conformi alla seguente convenzione:

<app name>.watchfacepush.<watchface name>

... dove <app name> è il nome del pacchetto dell'app che chiama l'API Push per i quadranti.

Ad esempio, per un'app con nome del pacchetto com.example.mymarketplace, i seguenti sono nomi di pacchetti di quadranti validi:

  • com.example.mymarketplace.watchfacepush.watchface1
  • com.example.mymarketplace.watchfacepush.watchface2
  • com.example.mymarketplace.watchfacepush.another_watchface

I quadranti non conformi a questa convenzione vengono rifiutati dall'API.

Contenuti del pacchetto

I contenuti dell'APK sono rigorosamente applicati. È necessario prestare attenzione per garantire che il formato del quadrante sia conforme ai seguenti vincoli: tecnicamente è possibile produrre APK in formato del quadrante che contengono file di metadati innocui e altri elementi, che potrebbero essere accettabili per Google Play, ma non superano la convalida del push del quadrante (vedi di seguito).

In ogni APK del quadrante sono accettabili solo i seguenti file/percorsi:

  • /AndroidManifest.xml
  • /resources.arsc
  • /res/**
  • /META-INF/**

Inoltre, nel file AndroidManifest.xml sono consentiti solo i seguenti tag:

  • <manifest>
  • <uses-feature>
  • <uses-sdk>
  • <application>
  • <property>
  • <meta-data>

Infine, il pacchetto deve specificare un valore minSdk di almeno 33 e il tag <application> deve specificare l'attributo android:hasCode="false".

Convalida

A differenza dei normali quadranti distribuiti tramite Google Play, la responsabilità di verificare che ogni quadrante sia ben formato e ottimizzato è dell'app Marketplace.

Google Play utilizza i seguenti controlli di convalida per verificare la qualità di ogni quadrante che utilizza la funzionalità Push dei quadranti:

  1. Tutti i quadranti installati o aggiornati tramite l'API Watch Face Push devono superare lo strumento di convalida Watch Face Push.
  2. Solo lo strumento di convalida ufficiale può essere utilizzato per generare token di convalida da utilizzare con l'API.
  3. Lo strumento di convalida utilizzato deve essere aggiornato al momento dell'esecuzione della convalida.
  4. Non è necessario convalidare di nuovo un APK che non è stato modificato. I token non scadono, anche quando la versione dello strumento di convalida utilizzato è stata sostituita.

    Allo stesso tempo, ti consigliamo di eseguire nuovamente la convalida di tanto in tanto, poiché lo strumento di convalida viene aggiornato periodicamente.

Esegui lo strumento di convalida

Per eseguire lo strumento di convalida su un APK del quadrante:

  1. Ottieni lo strumento di convalida dal repository Maven di Google.
  2. Esegui lo strumento come segue:

    java -jar validator-push-cli-1.0.0-alpha01.jar \
        --apk_path=youwatchface.apk \
        --package_name=<your marketplace package name>
    

    In caso di esito positivo, l'output include un token di convalida, che devi fornire all'API Watch Face Push quando aggiungi o aggiorni un quadrante.

    Se si verifica un errore, l'output include i dettagli sul controllo specifico che non è riuscito.

    Per un esempio di integrazione dello strumento CLI di convalida in una compilazione Gradle, consulta l'esempio di push del quadrante su GitHub.

Dimensioni dell'APK

È necessario prestare particolare attenzione ai quadranti con push per assicurarsi che le dimensioni dell'APK siano ridotte al minimo: è probabile che l'APK del quadrante venga trasmesso dall'app per smartphone all'app per smartwatch tramite Bluetooth, il che può essere lento.

La trasmissione di un APK eccessivamente grande potrebbe richiedere molto tempo, il che comporta sia una cattiva esperienza utente sia un consumo eccessivo della batteria.

  • Utilizza librerie appropriate come pngquant per mantenere minime le dimensioni dei file immagine.
    • Includi questa opzione nella procedura di creazione della collezione di quadranti
    • Verifica che le dimensioni dell'immagine siano appropriate per la scala in cui verrà utilizzata.
    • Assicurati che le immagini siano ritagliate in modo appropriato per rimuovere lo sfondo circostante.
  • Riduci le dimensioni dei file dei caratteri

Consulta le linee guida per l'ottimizzazione dell'utilizzo della memoria per ulteriori suggerimenti su come mantenere ridotte al minimo le dimensioni dell'APK.

Firma dell'APK

Come per un normale APK, tutti i quadranti devono essere firmati. Crea una chiave diversa da quella utilizzata con l'app principale e utilizzala per tutti i quadranti.

Architettura

Considera i tre componenti principali del sistema:

  1. Spazio di archiviazione basato su cloud: nell'app Marketplace canonica, i quadranti vengono creati e archiviati sul cloud, pronti per essere utilizzati dagli utenti. I quadranti sono:
    1. Precostruiti come APK di formato del quadrante standard
    2. Ognuno contiene un solo quadrante basato su Watch Face Format
    3. Sono stati convalidati utilizzando la procedura di convalida del push dei quadranti e vengono memorizzati insieme al token di convalida associato.
    4. Pronta per essere recuperata dall'app del telefono in base alle necessità.
  2. App Telefono: l'app Telefono è il modo principale in cui gli utenti interagiscono con il sistema. Consente loro di:
    1. Sfogliare e cercare nel catalogo dei quadranti
    2. Installare o sostituire un quadrante sullo smartwatch
  3. App per smartwatch: in genere, l'app per smartwatch potrebbe non avere un'interfaccia utente significativa. Si tratta principalmente di un ponte tra l'app per smartphone e le API push per i quadranti, con le seguenti funzionalità:
    1. Utilizzo dell'API Watch Face Push per installare/aggiornare o sostituire i quadranti
    2. Richiedere le autorizzazioni necessarie e chiedere conferma all'utente
    3. Fornire un quadrante predefinito
    4. Fornire una cache minima di quadranti
  4. Comunicazioni tra smartphone e smartwatch: la comunicazione tra l'app per smartphone e quella per smartwatch è fondamentale per il buon esito dell'esperienza complessiva. Utilizza le API Wear OS Data Layer, che consentono di:
    1. Rilevamento dell'installazione: utilizzando le funzionalità e il valore CapabilityClient, l'app per smartphone può rilevare l'assenza dell'app per lo smartwatch e viceversa. A questo può essere seguito il lancio di un'intent sul Play Store per installare il fattore di forma mancante.
    2. Gestione dello stato: utilizzando DataClient o MessageClient lo smartphone può essere mantenuto sincronizzato con lo stato dello smartwatch, ad esempio per assicurarsi che lo smartphone sia a conoscenza del quadrante impostato.
    3. Trasmissione di APK: utilizzando ChannelClient o MessageClient, gli APK possono essere inviati dallo smartphone allo smatphone.
    4. Richiesta da remoto: utilizzando Messageclient, lo smartphone può chiedere all'orologio di chiamare l'API Watch Face Push, ad esempio per installare un quadrante.

Per ulteriori dettagli, consulta le linee guida per l'API Data Layer.