• Non ci sono risultati.

Caratteristiche di sviluppo

3.4 Applicazioni native

3.5.2 Caratteristiche di sviluppo

Tizen attraverso i tools di sviluppo offerti permette di creare applicazioni Web e Widget che sfruttano i framework e le relative API, per dare la possibilit`a agli sviluppatori di creare applicazioni con una vasta gamma di funzionalit`a. In questa sezione ci dedicheremo maggiormente ai Widget, che riguardano il nostro caso di studio, quindi andremo ad analizzare gli aspetti da prendere in considerazione per lo sviluppo di un’applicazione Widget. 3.5.2.1 Impostazioni di configurazione

I Widget hanno un file contenente le impostazioni di configurazione chiama- to config.xml, che al suo interno contiene svariate impostazioni, che possia- mo catalogare qui in seguito. Per impostare queste configurazioni, in fase di sviluppo ci vengono incontro i tools offerti da Tizen, che suddividono queste categorie di aspetti in vari tab contenenti tutte le impostazioni da editare. Overview

In questa sezione verranno contenute tutte le informazioni di carattere generale come:

• Identificatore. • Versione.

• Nome del Widget.

• Content, i file di esecuzione del Widget. • Icona del Widget.

Widget

Contiene le informazioni riguardanti la licenza e le impostazioni dell’in- terfaccia grafica. Per quanto riguarda la licenza abbiamo la possibilit`a di impostare:

• E-mail. • Sito Web.

• Licenza, che contiene informazioni riguardanti contratto, copyright, ecc . . .

• Descrizione.

Per quanto riguarda l’interfaccia grafica: • Larghezza.

• Altezza.

• Modalit`a di visualizzazione. Features

Qui possono essere aggiunti tutti i filtri software e hardware, che si vo- gliono impostare per l’applicazione. Un esempio di come verrrano inseriti questi filtri nel file config.xml `e il seguente.

<tizen:feature name="http://tizen.org/feature/network.nfc/"> Privileges

Qui si possono inserire API o i gruppi di API, che verranno utilizzate nell’applicazione e perci`o occorre avere privilegi adeguati per il loro utilizzo. Si possono aggiungere privilegi in diverse modalit`a:

• Internal, che render`a possibile sceglire da una lista, i privilegi di quali API aggiungere.

• Privilege name, i privilegi verranno letti da un indirizzo Web, che contiene le definizioni.

Policy

In accordo con il W3C Access Requests Policy, non `e possibile utiliz- zare di default le risorse di rete, perci`o se l’applicazione necessita di queste risorse, bisogna richiedere le autorizzazioni per l’utilizzo di queste risorse. In questa sezione `e possibile impostare le seguenti propriet`a:

• content-security-policy, per impostare ulteriori politiche di sicurezza sia per applicazioni hosted che per applicazioni packpaged.

• content-security-policy-report-only, per impostare ulteriori politiche di sicurezza sia per applicazioni hosted che per applicazioni packpaged, con la possibilit`a di produrre report.

• allow-navigation, che definisce una lista di domini accessibili per ap- plicazioni Web.

• access, per permettere all’applicazione di accedere a specifici siti in- ternet.

Localization

In questa sezione lo svliuppatore pi`o offrire supporto all’applicazione, per localizzare pi`u agevolmente nel file config.xml informazioni come:

• Nome, informazioni riguardanti il nome dello sviluppatore. • Descrizione, descrizione del Widget.

• Licenza, informazioni riguardanti nome ed indirizzo Web della licenza. Preferences

In questa sezione `e possibile impostare una serie di coppie nome-valore, che possono essere richimate tramite l’uso di Widget API, per essere uti- lizzate nell’applicazione. `E possibile anche impostare se queste coppie sono utilizzabili solo in lettura oppure se `e possibile modificarle. Di fatto queste coppie possono essere viste come variabili globali.

Tizen

In questa sezione `e possibile impostare tutte le informazioni generali ri- guardanti vari aspetti dell’applicazione sviluppata tramite Tizen, alcune di queste informazioni `e obbligatorio che siano impostate, mentre altre sono opzionali e possono avere un valore di default.

• Applicazione, con informazioni riguardanti ID, Packpage, Versione Richiesta.

• Contenuti, dove viene indicata la cartella o il server dove si trova l’applicazione.

• Impostazioni, dove si impostano caratteristiche quali screen-orientation, context-menu, background-support, encryption, install-location, hwkey- event.

• App-control, che descrive le funzionalit`a dell’applicazione.

• App-widget, con attributi quali id, primary, auto-launch, update- period, box-label, box-icon, box-content, box-size, pd.

• Account, per informazioni riguardanti Display name, Multiple ac- count, Icon, Small icon, Capabilities.

• Metadata, che contiene metadati chiamati key, che possono essere accedudi solo in lettura dalle API usate dalle applicazioni Tizen. Source

In questa sezione viene mostrato il contenuto attuale del file config.xml, che pu`o essere anche direttamente modificato. Le modifiche che si attuano nel file config.xml otterranno un riscontro nelle sezioni relative.

3.5.2.2 Supporto ai display

Tizen offre vari strumenti per supportare la scalabilit`a delle applicazioni su dispositivi mobile aventi display di dimensioni e risoluzioni differenti. Que- sto aspetto `e fondamentale per rendere le interfaccie grafiche delle applica- zioni, compatibili con la maggior parte dei dispositivi mobile. Per garantire questo supporto vengono introdotti i seguenti aspetti.

Standard W3C

Gli standard offerti da W3C per supportare la scalabilit`a delle appli- cazioni sono rappresentati da due componenti adibiti a soddisfare questa necessit`a.

• Viewport Meta Tag - definisce la porzione di area relativa all’ap- plicazione dove verranno mostrati i contenuti della stessa. Trami- te questo componente possiamo impostare le dimensioni dell’area in altezza e larghezza, in pi`u ci permette di utilizzare fattori di scala. Bisogna tener presente che gli attributi altezza e larghezza, non corrispondono esattamente a quelli reali del dispositivo, ma utilizzando il fattore di scala si pu`o ovviare a questo problema. In ogni dispositivo il fattore di scala `e calcolato utilizzando il DPR, Device Pixel Ratio.

• CSS Media Query - tramite questo componente `e possibile impo- stare condizioni per l’utilizzo di diversi caratteristiche multime- diali di varie tipologie ed applicare specifici file CSS in base alle necessit`a. Questo componente permette di utilizzare importanti funzionalit`a per definire quale immagine utilizzare in base al DPI dello schermo, oppure definire quale file CSS utilizzare in base alle dimensioni dello schermo. Questo componente `e utilizzabile sia nei file CSS che nei file HTML.

Ottimizzazione delle risorse

L’utilizzo di applicazioni basate su tecnologie Web risulta efficiente sui diversi sistemi operativi per dispositivi mobile, poich´e queste applicazioni utilizzando componenti come il W3C Media Queries e il Flexible Box Lay- out, che sono in grado di creare layout che si adattano bene alle diverse condizioni in cui si trovano. Questo facilita la produzione di packpage che possono essere distribuiti ed utilizzati su dispositivi mobile aventi differenti caratteristiche fisiche.

Risorse come immagini animate, foto ed icone possono essere utilizzate sia in file HTML o come propriet`a di file CSS. Queste risorse che spes- so verranno utilizzate nello sviluppo di applicazioni vengono ottimizzate graficamente attraverso SVG API, Canvas API e WebGL API.

Documenti correlati