PhoneGap è un framework per costruire applicazioni native utilizzando HTML5, che è disponibile anche per Windows Phone.
Una volta scaricato, aggiunge un nuovo template di progetto a Visual Studio, all'interno del quale potremo creare la nostra soluzione. Poiché PhoneGap è un layer tra il nostro codice HTML e le funzionalità native, in certi scenari dobbiamo adattarci alle sue caratteristiche per poter implementare funzionalità native.
Un caso di questo tipo è quello relativo alla gestione della rotazione del dispositivo: essendo PhoneGap un layer tra la parte nativa e quella HTML, dovremo intercettare l'evento orientationchange attraverso un semplice codice JavaScript, per poi decidere cosa fare.
Ecco l'esempio, dove si può notare l'approccio utilizzato da PhoneGap:
<!DOCTYPE html> <html> <head> ... <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=no;" /> <script type="text/javascript" src="phonegap-1.2.0.js"></script> <script type="text/javascript"><!-- document.addEventListener("deviceready", onDeviceReady, false); // in questo stato il device è pronto function onDeviceReady() { // ci registriamo per l'evento orientationchange window.addEventListener("orientationchange", onOrientationChange, true); } // gestiamo l'evento function onOrientationChange(e) { var orientation = "portrait"; // stabiliamo il tipo di orientamento if (window.orientation == -90 || window.orientation == 90) orientation = "landscape"; // codice che applica le funzionalità specifiche per l'orientamento corrente document.getElementById("orientation").innerHTML = orientation; } //--></script> <body> ... </body> </html>
Come si può notare, questo codice avrà l'effetto, quando ruotiamo l'emulatore (o il device) di scrivere a video la corrispondente rotazione corrente:
Link e riferimenti utili
Il nostro speciale sullo sviluppo web mobilehttps://www.aspitalia.com/focuson/1267/Speciale-Web-Mobile-Costruire-Applicazioni-ASP.NET-JQuery-Mobile.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Mascherare l'output di un valore all'interno dei log di un workflow di GitHub
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Utilizzare la session affinity con Azure Container Apps
Installare le Web App site extension tramite una pipeline di Azure DevOps
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Utilizzare un service principal per accedere a Azure Container Registry
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Evitare la script injection nelle GitHub Actions
Usare una container image come runner di GitHub Actions
Eseguire attività con Azure Container Jobs