WAP (Wireless Application Protocol)

4 pagine in totale: <<Indietro 1 2 [3] 4 Avanti >>

Collegamenti

I collegamenti sono la controparte in WML del tag <A> in HTML. I collegamenti sono definiti dall'elemento " anchor ", anche se l'abbreviazione " a " é consentita. Un collegamento può contenre un comando esattamente come un elemento do . L'unica differenza è che i collegamenti non appaiono come un'opzione nel menu della soft key, ma sono mostrati come collegamenti nel documento WML, in pratica come dei familiari link HTML:

<anchor>
Go to card 2
<go href="#card2"/>
</anchor>

Variabili

<

WML integra il concetto di variabili in un modo diverso da quello a cui siamo abitutati in HTML e JavaScript. Le variabili WML possono essere manipolate da WMLScript, ma anche usate direttamente nel documento WML per modificare l'apparenza di una card. In altre parole, potete mostrare una card in base al valore di una variabile. Una variabile può essere settata sia dall'utente o attraverso l'elemento setvar . Le variabili possono anche essere manipolate via scripting, ma non necessariamente.

Questo punto deve essere messo in chiaro e capito subito. Per esempio, potreste avere una card che chiede il vostro nome e la card seguente che mostra "Ciao Luca" quando interpreta

Ciao $(firstname)

Quando si tratta di implementare applicazioni web, lo stesso scopo è raggiunto tramite ASP o usando innerHTML o altre tecniche DHTML avanzate. Questo meccanismo è stato introdotto in modo da minimizzare la quantità di dati scambiati dall'user agent (il telefonino) e il server. WML fa uso di variabili per costruire le card dinamicamente, in un modo che non ha un equivalente nella tradizionale programmazione web.

Dato che i valori di una variabile persistono anche attraverso card diverse, sono spesso utilizzate per mantenere informazioni sullo stato e supportare interazioni complesse con il servizio WAP. Un problema con questo approccio è la possibilità che la navigazione dell'utente porti il deck fuori dalla sincronizzazione con i dati che si aspettarebbero. Per questo, alcuni eventi ed attributi permettono allo sviluppatore di individuare la modalità di accesso ad una card ( onenterforward e onenterbackward ) e quando l'intero contesto dell'applicazione deve essere resettato ( newcontext ="true"). refresh è usato per forzare nuovamente il rendering di una card il cui contenuto dipende da una variabile.

Input dell'utente

Naturalmente, per essere veramente potenti, le variabili hanno bisogno di poter salvare i valori generati dall'input di un utente. Questo è possibile con una serie di elementi abbastanza simili agli elementi di una form HTML:

  • "input" : simile all'HTML. L'utente può inserire il testo attraverso la tastiera del telefonino. Come potete immaginare, ciò non è pratico come usare la tastiera di un PC e sarebbe buona norma ridurre al minimo l'uso di questo elemento ed optare per l'elemento select quando possibile.
    L'attributo name rappresenta il nome della variabile che verrà settata. default e size sono attributi che si spiegano da soli. format specifica una maschera di input. Per maggiori informazioni consiglio di fare riferimento ai manuali che vengono installati insieme al Nokia toolkit, in particolare per dettagli circa le possibili maschere, e sugli attributi che non ho menzionato.
  • "select/option" : una lista di opzioni tra cui l'utente può scegliere. Simile all'HTML:
<select name='movie'>
<option value='1'>Eyes Wide Shut</option>
<option value='2'>Notting Hill</option>
  :
<option value='13'>Buena Vista Social Club</option>
</select>

L'attributo

multiple=true
dice allo user agent che sono possibili scelte multiple. Un evento chiamato onpick viene generato quando un elemeno è selezionato/deselezionato.
  • "postfield" : molto simile agli hidden fields nei form HTML. Non viene mostrato sullo schermo. Può essere usato per postare un coppia nome/valore al server. Attualmente è molto più potente di un campo nascosto, perché grazie al modo in cui vengono gestite le variabili in WML, potete collezionare informazioni contestuali e quindi passarle al server tutte insieme.
  • "fieldset" : fa che in modo che il telefonino mostri insieme un set di elementi di input e testo, forzandone la visualizzazione in una sola schermata, se possibile.

Altri elementi

L'elemento img è supportato, ma è necessario memorizzare le immagini in un formato bitmap speciale, il WBMP. Una WBMP può essere prodotta utilizzando un piccolo e gratuito plug-in per Adobe PhotoShop e Paint Shop Pro. Non dimenticate di impostare in modo corretto il MIME type sul vostro server. Non è necessario farlo per applicazioni ASP, visto che è possibile dichiararlo esplicitamente, ma è necessario per utilizzare documenti WML statici e per tutti i formati riguardanti WAP.

wmltext/vnd.wap.wml
wmlcapplication/vnd.wap.wmlc
Wmlscapplication/vnd.wap.wmlscriptc
Wmlscripttext/vnd.wap.wmlscript
Wstext/vnd.wap.wmlscript
Wscapplication/vnd.wap.wmlscriptc
Wmlstext/vnd.wap.wmlscript
Wbmpimage/vnd.wap.wbmp

E' utile notare che alcuni elementi tradizionali utilizzati per l'impaginazione ( em , i , b , small , etc) sono supportati, così come le tabelle con la familiare sintassi HTML. br è supportato, ma ricordatevi di scriverlo come <br /> visto che qui siamo sotto la giurisdizione di XML.

In fine, una nota riguardo agli oggetti timer e all'evento ontimer . Un timer conta il tempo trascorso dal caricamento della pagina. Quanto il tempo specificato è trascorso, il timer fa scattare un evento ontimer a cui potete associare una qualsiasi operazione (task).

Ho tralasciato volutamente un po' di cose, ma nulla che vi impedisca di iniziare con la vostra applicazione WML.

4 pagine in totale: <<Indietro 1 2 [3] 4 Avanti >>

Contenuti dell'articolo

Commenti
Dai un voto a questo articolo, ci aiuterà a migliorare il nostro sito (1 è il voto minimo, 5 il massimo).

Per procedere al rating dell'articolo devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.


TUTORIALS
TOP TEN ARTICOLI
NOTIFICHE

Iscriviti alla nostra newsletter nuoviarticoli per ricevere e-mail le notifiche!

Indirizzo e-mail:
PROVIDER ASP.NET 2.0

Seleziona il database per avere il web.config pronto per Membership, Roles e Profile API.



IN EVIDENZA
MISC