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
Utilizzare il top layer in HTML
Shadow DOM open e closed sulla gestione delle pagine
Disabilitare la telemetria nella CLI di GitHub
Creare una cache temporanea in JavaScript
Usare i generics di C# con la clausola nameof in modo semplificato
Utilizzo delle stepped value functions nel CSS
Utilizzare le direttive più importanti in una file based app .NET
Centralizzare e governare MCP server e Skill con Azure API Center
Gestione delle issue type con GitHub
Ottimizzare le API in ASP.NET con Feature Flags
GitHub Copilot CLI in ambienti offline
Filtrare i dati in ASP.NET Core usando OpenTelemetry su Azure Monitor


