C'è una buona ragione per cui alcuni sviluppatori di app mettono prima la versione iOS della loro app. L'App Store è stato il primo sulla scena ed è ancora molto popolare, ma le altre piattaforme non possono essere ignorate. Con il lancio di Google Play, il settore delle app Android ha rapidamente raggiunto l'App Store iOS. Un'app Android di successo su Google Play può essere redditizia quanto un'app iOS su App Store. Gli sviluppatori esperti producono app per entrambe le piattaforme.
Sviluppo simultaneo di app iOS e Android
Lo sviluppo multipiattaforma offre la possibilità di codificare una volta e di creare ovunque. Risparmia molto tempo, anche se prevedi di sviluppare solo per iOS e Android. Quando aggiungi Windows, Mac e altre piattaforme al mix, è un risparmio di tempo estremo.
Tuttavia, lo sviluppo multipiattaforma viene fornito con un avvertimento. Sei spesso bloccato in un toolkit di terze parti, che potrebbe limitare ciò che puoi fare con un'app. Potresti non essere in grado di utilizzare le funzionalità più recenti di un sistema operativo finché il tuo toolkit non le supporta.
Chiunque desideri sviluppare per più di una piattaforma ha una selezione di toolkit tra cui scegliere. La scelta migliore per te dipende da cosa hai intenzione di fare con esso. Ecco alcune delle opzioni di sviluppo multipiattaforma.
01
di 04
Ampia documentazione e supporto per plug-in di terze parti.
Visualizza le modifiche istantaneamente, il che accelera il processo di prototipazione.
Specializzato nello sviluppo di giochi 2D.
Non include un editor WYSIWYG.
Connessione a Internet necessaria per creare un dispositivo.
Il kit di sviluppo software multipiattaforma Corona (SDK) di Corona Labs supporta computer Windows e Mac ed è un modo eccellente per sviluppare app iOS e Android. Con Corona SDK, crei un progetto una volta e lo pubblichi su più dispositivi, inclusi computer, smartphone, tablet e smart TV.
Corona SDK è rivolto principalmente ai giochi 2D, ma ha anche usi per la produttività. Alcuni sviluppatori hanno avuto successo nello sviluppo di app non di gioco utilizzando Corona SDK. La piattaforma utilizza LUA come linguaggio, il che rende la codifica più veloce rispetto all'utilizzo dei vari tipi di C in circolazione, e ha un motore grafico integrato.
La parte migliore è che Corona SDK è gratuito per principianti e hobbisti. I creatori e i professionisti seri pagano una tariffa mensile. Puoi scaricare e iniziare a sviluppare immediatamente sia giochi che app di produttività. Non è la scelta migliore se hai bisogno di molto input di testo da parte dell'utente, ma è solido per la maggior parte degli altri usi di produttività ed è eccezionale per la grafica 2D.
Usi primari: Giochi 2D, Produttività.
02
di 04
Curva di apprendimento inferiore rispetto ai suoi rivali.
Gruppo di supporto della comunità attiva.
Pacchetti di espansione specializzati.
Dimensioni di costruzione grandi non ideali per lo sviluppo di giochi per dispositivi mobili.
L'esportazione su iOS o macOS richiede il compilatore Xcode e un computer Mac.
L'SDK Corona è ottimo per la grafica 2D, ma se hai intenzione di passare al 3D, hai bisogno di Unity. Se hai intenzione di passare al 3D in futuro, Unity potrebbe essere la scelta migliore anche se il tuo progetto attuale è un gioco 2D. È sempre una buona idea creare un repository di codice per accelerare la produzione futura.
I giochi Unity potrebbero richiedere più tempo per essere sviluppati rispetto a Corona, ma Unity supporta quasi tutte le piattaforme disponibili, comprese le console e i giochi Web, supportati dal motore WebGL.
Unity ha modelli per iniziare con vari tipi di progetti, inclusi giochi 2D e 3D. Altre opzioni di modello includono modelli di fascia alta e leggeri. La Scriptable Render Pipeline (SRP) significa che gli sviluppatori e gli artisti tecnici possono iniziare in Unity senza dover essere abili in C++.
Uso primario: Giochi 3D.
03
di 04
L'interprete integrato facilita il debugging.
Numero impressionante di estensioni e strumenti compatibili.
La scarsa documentazione rende le cose difficili per i nuovi utenti.
Il sostegno della comunità sta appassendo.
Come suggerisce il nome, Cocos2D è un framework per la creazione di giochi 2D. Tuttavia, a differenza di Corona SDK, Cocos 2D non è esattamente una soluzione code-one, compile-everywhere. Invece, è una libreria che può essere inserita in diverse piattaforme e rendere il codice effettivo uguale o simile. Questo fa molto del lavoro pesante quando si porta un gioco da una piattaforma all'altra, ma richiede ancora più lavoro di Corona. Tuttavia, il vantaggio è che il risultato è codificato nella lingua predefinita, che ti dà pieno accesso a tutte le API del dispositivo senza aspettare che una terza parte le includa.
Sono disponibili diverse versioni di Cocos2D per C++, C#, Swift, Javascript e Python.
Uso primario: Giochi 2D.
04
di 04
Facilmente accessibile a chiunque abbia competenze di base su HTML5, CSS e Javascript.
App per smartphone per testare le app su più dispositivi.
Supporto integrato limitato per i widget dell'interfaccia utente.
La funzionalità API limitata si traduce in funzionalità di geolocalizzazione inaffidabili.
Adobe PhoneGap sfrutta HTML 5 per sviluppare applicazioni multipiattaforma. L'architettura di base di questa piattaforma è un'app HTML 5 che viene eseguita all'interno di un WebView sulla piattaforma del dispositivo. Puoi pensarlo come un'app Web che viene eseguita all'interno di un browser sul dispositivo, ma invece di aver bisogno di un server Web per ospitare l'app, il dispositivo funge anche da server.
Come puoi immaginare, PhoneGap non competerà bene con Unity, Corona SDK o Cocos in termini di gioco, ma può facilmente superare quelle piattaforme per il business, la produttività e la codifica aziendale. La base HTML 5 significa che un'azienda può sviluppare un'app Web interna e inviarla ai dispositivi.
Gli sviluppatori di PhoneGap beneficiano di una solida libreria di plug-in che estende le capacità delle app mobili multipiattaforma.
PhoneGap interagisce bene anche con Sencha, che è una piattaforma per la creazione di applicazioni web.
Uso primario: Produttività e affari.
E altro...
Corona SDK, Unity, Cocos e PhoneGap sono un buon esempio di pacchetti di sviluppo multipiattaforma, ma ci sono molte altre opzioni. Alcuni non sono altrettanto robusti, richiedono più tempo per passare dal codice alla build effettiva o sono costosi, ma potrebbero essere adatti alle tue esigenze.
- QT: Una buona scelta per le app aziendali e di produttività, QT è in circolazione da un po' di tempo in varie forme. L'ultima build mette un sacco di lucidatura attorno a una piattaforma altrimenti solida.
- Xamarin: un'altra scelta eccellente per le soluzioni non di gioco, Xamarin usa .NET e C# come linguaggio di programmazione. Xamarin è specializzato nell'uso degli elementi naturali dell'interfaccia utente del dispositivo, quindi le app sembrano progettate per ogni dispositivo specifico.
- acceleratore: Se preferisci creare utilizzando JavaScript, Appcelerator potrebbe essere il tuo strumento. Non è una soluzione perfetta per il codice una volta compilato ovunque: hai ancora del lavoro da fare per ottenere build per dispositivi specifici, ma può essere utilizzata per sviluppare per ogni dispositivo senza compromessi ibridi.