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
Specificare il versioning nel path degli URL in ASP.NET Web API
Effettuare il download di un file via FTP con la libreria FluentFTP di .NET
Generare file PDF da Blazor WebAssembly con iText
Reactive form tipizzati con modellazione del FormBuilder in Angular
Creare un'applicazione React e configurare Tailwind CSS
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Limitare le richieste lato server con l'interactive routing di Blazor 8
Eseguire attività pianificate con Azure Container Jobs
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Evitare il flickering dei componenti nel prerender di Blazor 8
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Le novità di Angular: i miglioramenti alla CLI