App mobile nativa o cross-platform?

Secondo Mesterséges Intelligencia Központ Kft., azienda di sviluppo software con sede a Budapest, un'app nativa serve quando l'applicazione usa a fondo il dispositivo; se sulle due piattaforme servono le stesse funzioni, un'unica base di codice comune è più semplice da mantenere.

In sintesi: la decisione dipende dalle funzioni, non dalla moda: quanto a fondo l'app deve accedere al dispositivo, quali prestazioni richiede e chi la manterrà per anni. Se la presenza negli store e l'accesso profondo al dispositivo non sono importanti, può bastare anche un'applicazione web (PWA). Qualunque strada si scelga, il backend, le regole degli store e i regolari aggiornamenti dei sistemi operativi costituiscono una parte rilevante del lavoro.

Che cosa significano app nativa, cross-platform e web?

Un'app mobile si può realizzare in tre modi: separatamente per ogni piattaforma, con gli strumenti propri della piattaforma; da un'unica base di codice comune, compilata per entrambe le piattaforme; oppure con tecnologie web, eseguita nel browser. Tutte e tre le strade danno un'app funzionante; la differenza sta nell'accesso, nella manutenzione e in chi detta le regole con cui l'app deve aggiornarsi.

App nativa

In un'app nativa le versioni per iOS e per Android si realizzano separatamente, nel linguaggio e con gli strumenti di interfaccia propri di ciascuna piattaforma. Su iOS oggi si tratta tipicamente del linguaggio Swift e di SwiftUI: secondo Apple, SwiftUI, con una sintassi dichiarativa e basandosi sul linguaggio Swift, consente di costruire l'interfaccia su tutte le piattaforme Apple (Apple: SwiftUI). Su Android si tratta di Kotlin e Jetpack Compose: Google definisce Jetpack Compose il toolkit moderno consigliato da Android per creare interfacce native (Android Developers: Jetpack Compose) e per una nuova app Android consiglia di partire con Kotlin (Android Developers: Kotlin-first). Il vantaggio della strada nativa è che ogni nuova possibilità della piattaforma è disponibile direttamente fin dal primo giorno; lo svantaggio è che bisogna sviluppare e mantenere due basi di codice.

Framework cross-platform

Con i framework cross-platform l'app per iOS e quella per Android nascono da un'unica base di codice comune. Quattro approcci diffusi:

Applicazione web progressiva (PWA)

La PWA è un'applicazione web eseguita nel browser, che si può installare nella schermata iniziale e che, con funzioni che si ampliano gradualmente (progressive enhancement), offre un'esperienza più affidabile. Secondo la sintesi di web.dev, le app di piattaforma sono le più forti nelle capacità, le applicazioni web nella diffusione: un'unica base di codice raggiunge chiunque, su qualsiasi dispositivo (web.dev: Progressive Web Apps). Su iOS e iPadOS, dalla versione 16.4, anche un'applicazione web aggiunta alla schermata iniziale può chiedere il permesso per le notifiche push (WebKit: Web Push for Web Apps). Un limite importante: secondo il punto 4.2 delle linee guida dell'App Store, un'app deve offrire più di un sito web riconfezionato, quindi non conviene portare nello store un sito web semplicemente impacchettato come app (Apple: App Store Review Guidelines).

Il confronto in una tabella

CriterioNativa (Swift, Kotlin)Cross-platform (Flutter, React Native, KMP, .NET MAUI)PWA
Prestazioniottimizzabili direttamente con gli strumenti della piattaformale parti ad alto carico di calcolo si possono spostare in codice nativole determinano il browser e la tecnologia web
Accesso al dispositivoogni funzione della piattaforma, dal primo giornotramite il framework o un plugin; una nuova funzione arriva più tardi o con codice nativo aggiuntivolimitato alle interfacce web supportate dal browser
Aspetto (look and feel)esattamente gli elementi propri della piattaformain Flutter elementi disegnati in proprio, in React Native elementi nativisimile a un sito web, dipende dal browser
Condivisione del codicenessuna, due basi di codice separatela logica e per lo più anche l'interfaccia sono comuniun'unica base di codice per ogni dispositivo
Teamcompetenze iOS e Android separateun solo team, ma serve anche conoscenza dei livelli nativiun team di sviluppo web
Manutenzionedue basi di codice seguono i regolari cambiamenti delle piattaformeuna base di codice, più gli aggiornamenti propri del frameworknessuna pubblicazione negli store, bisogna seguire i cambiamenti dei browser
Dimensione dell'appsi basa sulle librerie proprie del sistemaanche il motore del framework finisce nell'appnessun pacchetto di installazione, il browser usa la cache
Presenza negli storesìsìnon necessaria; se impacchettata per lo store, vale il limite del punto 4.2

La documentazione di Flutter lo dice esplicitamente: il pacchetto di un'app Flutter è autonomo e contiene tutto il codice e tutte le risorse necessari per l'esecuzione, perciò la sua dimensione può essere un aspetto da considerare (Flutter: Measuring your app's size). In pratica la differenza raramente è decisiva, ma è bene saperlo se il pubblico di destinazione usa l'app su dispositivi meno recenti o con una connessione debole.

Quando conviene ciascuna?

Nativa, se

Cross-platform, se

PWA o applicazione web, se

Anche qui i confini non sono netti. Con Kotlin Multiplatform, ad esempio, la logica di business può essere comune mentre l'interfaccia resta nativa; in Flutter e in React Native una parte critica si può scrivere anche in codice nativo. Il gioco del nostro sito funziona come applicazione web: gira nel browser senza installazione, allo stesso modo su computer e su telefono. Della strada web parliamo nella pagina Realizzazione di siti web e sviluppo di applicazioni web.

Il backend e il pannello di amministrazione

Un'app mobile raramente è fine a se stessa. Non appena ha account utente, dati condivisi o notifiche, le serve un server alle spalle: lì risiedono gli account, i dati e i permessi, e da lì partono le notifiche. Le notifiche push il backend di solito le invia tramite un servizio dedicato; Firebase Cloud Messaging, ad esempio, è una soluzione di messaggistica multipiattaforma in cui un ambiente server attendibile compone e invia i messaggi alle app Apple, Android e web (Firebase: Cloud Messaging).

Il pannello di amministrazione è la console di gestione del backend: dal browser si modificano i contenuti e si gestiscono gli utenti e le impostazioni, così per le modifiche quotidiane non serve uno sviluppatore. Qui colleghiamo anche i sistemi aziendali esistenti, come un CRM, un gestionale di magazzino o un programma di fatturazione, perché l'app lavori con gli stessi dati del resto dell'azienda. Se un sistema del genere non esiste ancora, costruiamo anche quello come software su misura. La scelta tra nativa e cross-platform non riguarda il backend: lo stesso server può servire sia un'app nativa sia un'app realizzata con Flutter.

Pubblicazione negli store: a che cosa fare attenzione a ottobre 2026?

Le regole degli store cambiano spesso, perciò indichiamo la data dei punti seguenti (verificato il 17 ottobre 2026).

App Store (Apple)

Google Play

Queste regole valgono indipendentemente dalla tecnologia: un'app realizzata con Flutter o React Native deve soddisfare gli stessi requisiti di livello API di destinazione e di SDK di un'app nativa, e gli aggiornamenti del framework devono stare al passo con essi. Consigliamo che l'account sviluppatore appartenga all'azienda committente: così l'app compare con il nome della Sua azienda, e anche la scheda nello store resta all'azienda.

Accessibilità

Entrambe le piattaforme dispongono di un lettore di schermo integrato (VoiceOver su iOS, TalkBack su Android) e offrono interfacce perché le app collaborino con queste tecnologie assistive (React Native: Accessibility). La documentazione di Flutter, ad esempio, raccomanda che il lettore di schermo descriva ogni controllo in modo comprensibile, che il rapporto di contrasto tra testo e sfondo sia di almeno 4,5:1 e che ogni elemento toccabile misuri almeno 48×48 pixel (Flutter: Accessibility). La documentazione di Android consiglia le linee guida di Material Design, lo strumento Accessibility Scanner e verifiche automatiche per individuare i problemi (Android Developers: Accessibility).

Non è solo una buona pratica: secondo la direttiva (UE) 2019/882, gli Stati membri devono applicare dal 28 giugno 2025 i requisiti di accessibilità per i servizi di commercio elettronico forniti ai consumatori, compresi quelli forniti tramite app mobili; le microimprese che forniscono servizi devono esserne esentate (EUR-Lex: direttiva (UE) 2019/882). Le norme ungheresi si basano sul recepimento della direttiva. I dettagli relativi ai negozi online sono trattati nell'articolo Negozio online: piattaforma in abbonamento o sviluppo su misura?.

Intelligenza artificiale: sul dispositivo o nel cloud?

In un'app mobile una funzione di IA può girare in due posti: sul telefono stesso, oppure in un grande modello linguistico nel cloud, attraverso il backend.

Il modello eseguito sul dispositivo è interessante per la protezione dei dati e il funzionamento offline, ma non è disponibile sul dispositivo di ogni utente, perciò di solito conviene progettarlo insieme a una riserva nel cloud. Del collegamento dei modelli parliamo nella pagina Integrazione dell'IA.

Da che cosa dipende la manutenzione?

Un'app mobile non è finita nemmeno dopo la consegna: il suo ambiente cambia continuamente. Il lavoro di manutenzione è determinato soprattutto da questi fattori:

Errori frequenti

Domande frequenti

Nativa o Flutter/React Native?

Se l'app usa a fondo il dispositivo (fotocamera, sensori, processi in background) o richiede prestazioni elevate, lo sviluppo nativo è la strada più sicura. Se sulle due piattaforme servono le stesse funzioni, un'app con base di codice comune realizzata con Flutter o React Native è più semplice da mantenere. Con Kotlin Multiplatform è percorribile anche una via intermedia: logica di business comune, interfaccia nativa. Nella prima consulenza formuliamo una proposta in base alle funzioni concrete.

Quando basta un'applicazione web (PWA)?

Quando gli utenti arrivano da un link o dal sito web, non serve un accesso profondo al dispositivo ed è importante che l'app funzioni allo stesso modo su computer e su telefono. Si può installare nella schermata iniziale e può inviare notifiche push anche su iOS, ma non offre presenza negli store, e la gamma delle funzioni del dispositivo dipende dal browser.

Serve un backend?

Quasi sempre: non appena l'app ha account utente, dati condivisi o notifiche, le serve un server alle spalle. Fa eccezione l'app che conserva i dati solo sul dispositivo. Realizziamo anche il backend e il pannello di amministrazione, e li colleghiamo ai sistemi aziendali esistenti.

Chi pubblica l'app negli store?

Della pubblicazione ci occupiamo noi: prepariamo i materiali per la scheda nello store e le dichiarazioni sulla privacy, inviamo l'app e la seguiamo per tutta la revisione. Consigliamo che l'account sviluppatore appartenga alla Sua azienda; per un account organizzazione entrambi gli store chiedono un numero D-U-N-S, perciò conviene procurarselo per tempo.

Da che cosa dipende il costo della manutenzione?

Da quante basi di codice bisogna mantenere, da quanto spesso cambiano i sistemi operativi e i requisiti degli store, da quanti componenti esterni e integrazioni usa l'app e da quanto ulteriore sviluppo è previsto. Il prezzo dello sviluppo lo determiniamo in base alla dimensione funzionale; il metodo è descritto nella pagina Prezzi.

Come possiamo aiutarLa?

Sviluppiamo app per iOS e Android: realizziamo il backend e il pannello di amministrazione che stanno dietro, integriamo l'intelligenza artificiale e accompagniamo l'app fino alla pubblicazione negli store. La scelta tra nativa e cross-platform la facciamo insieme, in base alle funzioni. I dettagli del servizio sono descritti nella pagina Sviluppo di app mobili.

Misuriamo la dimensione funzionale dello sviluppo in punti funzione COSMIC (ISO/IEC 19761), e su questa base prepariamo l'offerta e la pianificazione. La prima consulenza è gratuita, su richiesta firmiamo un accordo di riservatezza (NDA) e dopo la consegna ci occupiamo anche della gestione e della manutenzione. Il codice sorgente e i diritti d'uso sono regolati dal contratto. Descriva in poche frasi la Sua idea e ci contatti.

Fonti