Morgan Adams, uno sviluppatore Flash, esprime il suo punto di vista sull’accoppiata Flash-iPad dandoci l’opportunità di approfondire l’argomento.
Il concetto chiave che Adams mette in evidenza è il seguente: spesso si sente parlare dei problemi che Flash potrebbe causare se usato su un dispositivo come iPad: batteria che si consuma in fretta, risorse hardware non sufficienti o plugin pieno zeppo di bug che causano crash; nessuno però si pone una domanda essenziale: Flash e iPad sono compatibili? Ha davvero senso parlare di un plugin Flash per iPad?
Il punto di vista di Adams, in realtà, si può tranquillamente estendere a tutti i dispositivi touchscreen, come avremo modo di appurare. Fondamentalmente il problema principale è il sistema di puntamento: tutte le applicazioni Flash, fino a questo momento, sono pensate per funzionare con un dispositivo di puntamento come il mouse. Questo implica che molte applicazioni (quasi tutte, a dire la verità) sono “mouse-centriche” e non tengono conto di altri possibili alternative.
Ciò sostanzialmente comporta che, qualora si utilizzasse un sistema di puntamento differente (vedi touchscreen), potrebbe succedere che l’applicazione non funzioni correttamente o che funzioni solo in parte, precludendo alcune funzionalità. Pensiamo, ad esempio, al concetto di mouseover. Il mouseover è un evento che viene scatenato ogni volta che il mouse passa sopra un oggetto; se a quel particolare evento è legata una qualche azione questa viene eseguita. Ad esempio, al passaggio del mouse sopra un bottone, questo potrebbe cambiare colore, o potrebbe muoversi; oppure, al passaggio del mouse sopra un immagine potrebbe spuntare il classico fumetto con una didascalia; o ancora i classici menu a popup che si vedono in tante applicazioni Flash.
Il mouseover è un evento tenuto molto in considerazione dagli sviluppatori Flash ed è anche molto sfruttato. In alcune applicazioni è fondamentale che questo evento venga gestito correttamente, pena il malfunzionamento dell’applicazione. Il nome stesso di questo evento, però, fa ben capire che esso è strettamente legato ad un mouse (o un sistema di puntamento con caratteristiche equivalenti). Su un dispositivo touchscreen come l’iPad il concetto di mouseover è inesistente perchè del tutto superfluo.
Lo stesso Morgan Adams propone alcune soluzioni per aggirare questo problema, ma nessuna di esse sembra essere convincente (e lo stesso Adams lo ammette):
- Riscrivere tutte le applicazioni Flash che si vogliono rendere disponibili per iPad in modo che siano compatibili con dispositivi touchscreen. Sarebbe la soluzione ideale per gli utenti ma è tanto buona quanto impraticabile, per ovvie ragioni.
- Usare delle gesture (magari a più dita) per poter simulare il mouseover. Questo comporterebbe notevoli complicazioni per l’utente e renderebbe la navigazione poco fluida
- Associare il click ad un’azione più complicata rispetto al semplice tap. Per esempio, un singolo tap potrebbe simulare il mouseover, mentre un doppio tap potrebbe significare un click. Questo è un po’ lo stesso metodo che si usa in Safari per iPhone per rendere funzionanti i menu Javascript che utilizzano popup. Molte applicazioni Flash, però, fanno anche uso del doppio click al loro interno e questo sarebbe un bel problema.
- Utilizzare un cursore per le applicazioni Flash, gestibile tramite una sorta di trackpad. In pratica l’iPad (o l’iPhone) diventerebbe un trackpad gigante se utilizzato per un’applicazione Flash. Anche questa soluzione comporta alcuni disagi: l’iPad diventerebbe qualcosa di “simile ad un notebook ma peggio” e resta sempre il problema di far capire all’utente quando lo schermo viene usato come trackpad e quando viene usato come touchscreen.
- Utilizzare due tipi di tap: hard-tap e soft-tap. Questo sarebbe molto poco intuitivo e il tasso di errore potrebbe essere molto elevato.
Insomma, forse l’impossibilità di avere un plugin Flash per iPhone OS non è proprio una scelta, ma più un esigenza (o incompatibilità, se preferite). A onor del vero c’è da dire che su altre piattaforme mobili (alcune versioni di Android, Symbian e Windows Mobile, per esempio) è implementato un plugin per Flash; molto spesso però queste implementazioni sono incomplete, poco funzionali e creano all’utente più problemi che benefici. Forse sarebbe bene cominciare a pensare di abbandonare Flash in favore di qualcosa di più appropriato e standardizzato (chi ha detto HTML5?)
[via]