La battaglia tra Flash e Html5 ha un risvolto tecnico che cerco di approfondire e diviene sempre più complicato.
Tale Morgan Adams, sviluppatore Flash di mestiere, ha scritto che gli attuali siti contenenti Flash non possono funzionare bene sugli apparecchi con interfaccia touch per via di hover e mouseover. Sono termini tecnici che descrivono il comportamento del mouse quando si ferma sopra un elemento di interfaccia, senza cliccare. L’argomento è che ovviamente quando usiamo il mouse lo portiamo perennemente su qualcosa prima di cliccare. I siti Flash usano questo meccanismo, ovviamente, che non è replicabile se il clic è il tocco; ovviamente lo schermo non ha modo di sapere che abbiamo un dito vicino allo schermo, fino a che non lo tocchiamo. Ma toccare è già cliccare.
Fearandil e Filippo mi hanno segnalato la questione e così ho iniziato ad approfondire.
Sembra che in realtà l’obiezione non sia pertinente e che Flash sia programmabile in modo da funzionare correttamente su schermi touch. Il problema pare essere altro: prima di tutto il codice Flash installato sui siti di mezzo pianeta non ha idea di interfacce diverse dal mouse e quindi non è programmato per essere usato a ditate. Secondo, la difficoltà più vasta e investe, per dire, anche il codice Html in certi casi.
Faccio un esempio. Ho una pagina Html che contiene un rettangolo con dentro un gioco Flash, che ha i propri comandi grafici interni. Lo carico ipoteticamente sul mio smartphone touch e, se fa come iPhone, vedo la pagina tutta intera, con dentro il rettangolo Flash. Se tocco la pagina in corrispondenza del rettangolino, sto comandando la pagina (per esempio per scorrerla) oppure sto comunicando con l’interfaccia interna del giochino?
Flash su certi telefoni funziona e qualcuno si è inventato soluzioni. Per esempio, lo sviluppatore Adobe Mike Chambers ha ricordato la tecnica del doppio tocco. Se tocco due volte Flash, questo va a pieno schermo e allora parlo con l’interfaccia interna. Altrimenti sto parlando con la pagina Html. Sul Nexus One di Google funziona così. Sull’N900 Nokia però non funziona e un doppio tocco zooma la pagina Html, non il solo codice Flash.
Continuo a sfogliare pareri di programmatori e tecnici senza venire a una risposta certa. Mi par di capire che Flash può essere pienamente programmato per comportarsi bene su uno schermo touch e che però ci siano differenze tra l’interfaccia a mouse e l’interfaccia a tocco che richiederanno sempre a comunque programmazione ad hoc, che il 99 percento del Flash già esistente non ha e non avrà.
Le ragioni per fare a meno di Flash rimangono comunque altre: inefficienza del codice, rischi di sicurezza, sovraccarico del processore. E qui non ci sono questioni.
In premio a chi ha sopportato questa digressione senza capo né coda, un paio di esempi Hmtl5: Cubi tridimensionali con testo su ogni faccia e Immagini in volo.