>> Tecnologia elettronica >  >> Cellulari & accessori >> Smartphone

Sviluppo widget Android: basi, limiti, layout e configurazione

Introdotti in Android 1.5, i widget sono un tipo speciale di app che appare sulla home screen dell'utente accanto alle icone di collegamento. Il layout di un widget è scritto in XML, mentre le sue funzioni — cosa fare quando aggiornato, quando creato, ecc. — sono metodi Java, ereditati e sovrascritti dall'interfaccia AppWidgetProvider.

Basi del widget

Per creare un widget funzionante che l'utente possa aggiungere alla home screen, bisogna creare una nuova classe che erediti da AppWidgetProvider. Questa classe contiene metodi per ricevere intent solo per widget, come un intent per chiudere o aggiornare il widget. Un widget deve anche contenere un file XML di metadati, che dice al sistema operativo Android le proprietà previste del widget come dimensioni minime, frequenza di aggiornamento, layout e altri dati necessari al sistema operativo.

Limiti del widget

I widget per smartphone sono limitati a una certa dimensione e possono aggiornarsi solo fino a una certa frequenza. Nelle versioni di Android precedenti alla 3.1, sostituiscono effettivamente le icone sulla home screen e non possono essere ridimensionati, quindi quando si specifica una dimensione minima per il widget, questo si estenderà per coprire il numero di spazi necessari a soddisfare i requisiti minimi. Le versioni successive di Android hanno widget ridimensionabili, e quelle variabili di dimensione diventano il "default" per il widget e nuove variabili — minResizeWidth e minResizeHeight — specificano la dimensione minima effettiva del widget. Inoltre, tutti i widget hanno una frequenza minima di aggiornamento. Se si specifica una frequenza inferiore al minimo, Android la ignorerà e userà la sua frequenza minima — ad esempio, 30 minuti nelle app versione 1.5.

Layout dei widget

I widget devono poter girare su molti telefoni diversi che possono avere risoluzioni schermo diverse. LinearLayout è un layout semplice che si adatta facilmente a qualsiasi schermo; ordina i componenti da sinistra a destra o dall'alto in basso a seconda dell'attributo "android:orientation". FrameLayout e RelativeLayout sono anche compatibili con lo sviluppo widget. I widget possono annidare layout dentro altri layout. Android 4.0 e superiori applicano automaticamente margini ai loro widget se si imposta targetSdkVersion dell'app a 14 o superiore; gli sviluppatori raccomandano di non aggiungere margini extra fuori dalla forma di sfondo del widget se si sviluppa per questa piattaforma.

Configurazione del widget

Alcuni widget mostrano solo informazioni e non possono essere personalizzati dall'utente. Altri offrono un modo per configurare il widget. Si può implementare questa personalizzabilità creando una classe che estende la classe Activity e impostando il layout con XML. La classe di configurazione dovrà accedere ai componenti della classe di layout così che il widget riconosca le azioni dell'utente e aggiorni il widget di conseguenza. AndroidManifest.xml mantiene un elenco delle activity implementate.

  1. Come Eliminare Widget da Android HTC Hero
  2. Sviluppo kernel Android
  3. Sviluppo con Android SDK
  4. Pacchetto sviluppo Android
  5. Come sincronizzare manualmente i widget/account su Android
  6. Come creare un widget Android personalizzato