Sviluppo di software Android: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→Storia e impatto sul mercato: Errore di battitura Etichette: Modifica da mobile Modifica da web per mobile |
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti. |
||
Riga 37:
Il ''kit di sviluppo software Android'' ([[Software development kit|SDK]]) include una serie completa di strumenti di sviluppo.<ref>{{cita web|url=https://developer.android.com/studio/command-line/index.html|titolo=Tools Overview|lingua=en|data=21 luglio 2009|accesso=24 agosto 2016}}</ref> Tra questi sono presenti: un [[debugger]], [[Libreria (software)|librerie]], un [[emulatore]] portatile basato su [[QEMU]], documentazione, [[Codice (teoria dell'informazione)|codici]] esemplificativi e tutorial. Le piattaforme di sviluppo attualmente supportate sono i [[computer]] che eseguono [[Linux (kernel)|Linux]] (qualsiasi moderna distribuzione Linux), [[macOS]] 10.5.8 o versioni successive e [[Windows XP]] o successivo. A partire da marzo 2015, l'SDK non è disponibile su Android in sé, ma lo sviluppo del software rimane possibile utilizzando applicazioni Android specializzate.<ref>{{cita web|url=https://play.google.com/store/apps/details?id=com.aide.ui|titolo=AIDE- IDE for Android Java C++|lingua=en|data=|accesso=24 agosto 2016}}</ref><ref>{{cita web|url=https://play.google.com/store/apps/details?id=air.JavaEditor|titolo=Java Editor|lingua=en|data=|accesso=24 agosto 2016}}</ref><ref>{{cita web|url=https://play.google.com/store/apps/details?id=ch.tanapro.JavaIDEdroid|titolo=JavaIDEdroid|lingua=en|data=|accesso=24 agosto 2016}}</ref>
Fino alla fine del 2014 l'ambiente di sviluppo integrato ufficialmente supportato ([[Integrated development environment|IDE]]) è stato [[Eclipse (informatica)|Eclipse]] utilizzando gli [https://web.archive.org/web/20160826222404/https://www.appaustic.com/android-app-development#section4 Android Development] Tools (ADT) Plugin, anche se ad esempio gli [[Ambiente (programmazione)|ambienti]] [[IntelliJ IDEA]]<ref>{{cita web|url=http://www.jetbrains.com/idea/features/|titolo=Making development an enjoyable experience|lingua=en|data=|accesso=24 agosto 2016}}</ref> e [[NetBeans]]<ref>{{cita web|url=http://plugins.netbeans.org/plugin/19545/nbandroid|titolo=NBAndroid|lingua=en|data=|accesso=24 agosto 2016|dataarchivio=17 ottobre 2018|urlarchivio=https://web.archive.org/web/20181017052437/http://plugins.netbeans.org/plugin/19545/nbandroid|urlmorto=sì}}</ref> supportano pienamente lo sviluppo di Android. A partire dal 2015 [[Android Studio]]<ref>{{cita web|url=https://developer.android.com/studio/index.html|titolo=Android Studio|lingua=en|data=|accesso=24 agosto 2016}}</ref>, realizzato da [[Google (azienda)|Google]] e alimentato da IntelliJ, è l'IDE ufficiale di Android. Gli sviluppatori, inoltre, possono utilizzare qualsiasi [[editor di testo]] per modificare i file [[Java (linguaggio di programmazione)|Java]] o [[XML]] e successivamente utilizzare un [[Interfaccia a riga di comando|comando]] ([[Java Development Kit]] e [[Apache Ant]] sono indispensabili) per creare, implementare ed eseguire le applicazioni avendone il controllo sui dispositivi Android collegati (ad esempio innescando il riavvio del dispositivo, installando un pacchetto software da remoto, ecc).<ref>{{cita web|url=http://jonwestfall.com/2009/08/backup-restore-android-apps-using-adb/|titolo=Backup & restore Android apps using ADB|lingua=en|data=25 agosto 2009|accesso=24 agosto 2016}}</ref>
I miglioramenti apportati all'SDK vanno di pari passo con lo sviluppo globale della piattaforma Android. L'SDK supporta anche le versioni precedenti di Android nel caso in cui gli sviluppatori desiderassero eseguire le loro applicazioni su dispositivi più vecchi. Gli strumenti di sviluppo sono componenti scaricabili, pertanto dopo aver scaricato l'ultima versione dell'ambiente e della piattaforma, quelle meno recenti possono essere scaricate facilmente per eseguire dei test di compatibilità.<ref>{{cita web|url=https://developer.android.com/studio/releases/sdk-tools.html|titolo=SDK Tools Release Notes|lingua=en|data=|accesso=24 agosto 2016}}</ref>
Riga 67:
Applicazioni complete possono essere create, compilate ed installate utilizzando gli strumenti di sviluppo tradizionali.<ref>{{cita web|url=http://benno.id.au/blog/2007/11/13/android-native-apps|titolo=Native C applications for Android|lingua=en|data=13 novembre 2007|accesso=24 agosto 2016}}</ref> Tuttavia, in base alla documentazione Android, NDK non dovrebbe essere utilizzato esclusivamente per lo sviluppo solo perché lo sviluppatore preferisce programmare in C o C ++, infatti l'uso di NDK aumenta la complessità della programmazione e la maggior parte delle applicazioni non trarrebbero beneficio dal suo assiduo utilizzo.<ref>{{cita web|url=https://developer.android.com/ndk/index.html|titolo=Android NDK|lingua=en|data=|accesso=24 agosto 2016}}</ref>
Il debugger ADB fornisce una [[Shell (informatica)|shell]] root tramite l'emulatore Android che permette al codice scritto sui supporti ARM, MIPS o x86 di essere caricato ed eseguito. Il codice può essere compilato con [[GNU Compiler Collection|GCC]] o con il compilatore Intel C++ su un PC standard.<ref>{{cita web|url=https://software.intel.com/en-us/c-compilers/inde|titolo=Intel C++ Compiler 14.0 for Android|lingua=en|data=|accesso=24 agosto 2016}}</ref> L'esecuzione di codice nativo è complicato dal fatto che Android fa uso di una libreria C non standard (libc, nota come Bionic). La libreria grafica che Android utilizza per controllare l'accesso a questo dispositivo si chiama Skia Graphics Library (SGL) ed è stata rilasciata sotto una [[licenza open source]].<ref>{{cita web|url=https://src.chromium.org/viewvc/chrome/trunk/src/skia/|titolo=Skia source|lingua=en|data=|accesso=24 agosto 2016}}</ref> Skia dispone di ''[[front-end e back-end]]'' sia per [[Windows API|Win32]] sia per [[Unix]], consentendo lo sviluppo di applicazioni multipiattaforma, ed è il [[motore grafico]] alla base del [[browser]] [[web]] [[Google Chrome]].<ref>{{cita web|url=http://www.atoker.com/blog/2008/09/06/skia-graphics-library-in-chrome-first-impressions/|titolo=Skia graphics library in Chrome: first impressions|lingua=en|data=6 settembre 2008|accesso=24 agosto 2016}}</ref>
A differenza dello sviluppo in Java, basato su un IDE come Eclipse, l'NDK si basa su strumenti da riga di comando e necessita che questi vengano richiamati manualmente per costruire, implementare ed eseguire le applicazioni. Alcuni strumenti consentono di integrare l'NDK in Eclipse<ref>{{cita web|url=https://mhandroid.wordpress.com/2011/01/23/using-eclipse-for-android-cc-development/|titolo=Using Eclipse for Android C/C++ Development|lingua=en|data=23 gennaio 2011|accesso=24 agosto 2016}}</ref> e in Visual Studio.<ref>{{cita web|url=http://visualgdb.com/tutorials/android/|titolo=Using Visual Studio to Develop Native Android Code|lingua=en|data=30 aprile 2015|accesso=24 agosto 2016}}</ref>
Riga 91:
=== Delphi ===
[[Embarcadero Delphi|Delphi]] può essere utilizzato per creare applicazioni utilizzando il linguaggio [[Object Pascal]]. L'ultima versione è Delphi 10 Seattle, sviluppato da Embarcadero.<ref>{{cita web|url=https://www.embarcadero.com/products/delphi|titolo=Delphi Xe7|lingua=en|data=|accesso=24 agosto 2016}}</ref> Le interfacce utente sono sviluppate utilizzando il [[framework]] GUI FireMonkey. Inoltre è disponibile un numero crescente di componenti non visivi per l'interazione con i vari sensori (e.g. fotocamera, [[giroscopio]], GPS, [[Bluetooth]], ecc). Altri servizi, ad esempio l'accesso a determinati eventi di tastiera, sono resi disponibili in maniera indipendente dalla piattaforma. Il compilatore è basata sull'architettura [[LLVM]] ed è possibile il debug tramite l'IDE. Le applicazioni generate sono basate sull'NDK ma, a differenza di Xamarin, il [[runtime]] viene compilato all'interno dell'applicazione stessa.
=== HyperNext Android Creator ===
|