Sviluppo di software Android: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0.9.5
Funzionalità collegamenti suggeriti: 2 collegamenti inseriti.
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|dataarchivio=13 settembre 2009|urlarchivio=https://web.archive.org/web/20090913233211/http://benno.id.au/blog/2007/11/13/android-native-apps|urlmorto=sì}}</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 131:
Esiste una comunità di appassionati che costruiscono e condividono [[firmware]] open-source basati su Android che presentano una serie di personalizzazioni e funzioni aggiuntive, ad esempio il supporto audio [[Free Lossless Audio Codec|FLAC]] e la possibilità di memorizzare le applicazioni scaricate sulla scheda [[MicroSD]].<ref>{{cita web|url=https://forum.xda-developers.com/htc-dream-g1/development|titolo=Dream android development|lingua=en|data=|accesso=25 agosto 2016}}</ref> Solitamente questa procedura richiede lo sblocco del [[boot loader]] e il [[rooting]] del dispositivo che consente l'accesso degli utenti al sistema operativo ed averne quindi il pieno controllo. Nonostante presenti alcuni svantaggi, il rooting permette di installare firmware personalizzati (ad esempio [[CyanogenMod]] e OMFGB), i quali permettono ai proprietari di dispositivi più datati di utilizzare le app disponibili solo sulle versioni più recenti.<ref>{{cita web|url=http://www.redmondpie.com/android-2.1-from-motorola-droid-ported-to-g1-9140291/|titolo=Android 2.1 from Motorola Droid Ported to G1|lingua=en|data=30 dicembre 2009|accesso=25 agosto 2016}}</ref>
 
Il 24 settembre 2009 Google ha pubblicato una lettera di [[diffida]]<ref>{{cita web|url=http://androidandme.com/2009/09/news/cyanogenmod-in-trouble/|titolo=CyanogenMod in trouble?|lingua=en|data=24 settembre 2009|accesso=25 agosto 2016}}</ref> nei confronti dei [[Modding|modder]] di Cyanogen, citando problemi con la ri-distribuzione delle applicazioni [[Software proprietario|closed source]] di Google<ref>{{cita web|url=https://android-developers.blogspot.it/2009/09/note-on-google-apps-for-android.html|titolo=A Note on Google Apps for Android|lingua=en|data=25 settembre 2009|accesso=25 agosto 2016}}</ref> all'interno dei firmware personalizzati. Nonostante la maggior parte del sistema operativo Android sia open source, i telefoni vengono confezionati in modalità closed source per favorire l'operabilità di applicazioni come [[Google Play]] e la navigazione GPS. Google ha affermato che queste applicazioni possono essere fornite solo attraverso i canali di distribuzione approvati ed ufficiali. Cyanogen ha rispettato la volontà di Google e sta continuando a distribuire i suoi mod senza l'uso del software proprietario.
 
== Standard Java ==