Share to: share facebook share twitter share wa share telegram print page

Sviluppo di software Android

Il Nexus 4 fa parte della serie Google Nexus, una linea di dispositivi "developer-friendly".[1]

Lo sviluppo di software Android è il processo mediante il quale vengono create nuove applicazioni per il sistema operativo Android. Le app sono in genere sviluppate in linguaggio Java utilizzando il kit di sviluppo software Android (SDK), nonostante siano disponibili altri ambienti di sviluppo.

Strumenti di sviluppo ufficiali

Android SDK

Android SDK
software
Schermata di esempio
Schermata di esempio
GenereIntegrated development environment
SviluppatoreGoogle
Data prima versioneOttobre 2009
Ultima versione25.1.6 (maggio 2016)
Sistema operativoMultipiattaforma
LinguaggioJava
LicenzaAndroid Open Source Project
(licenza libera)
LinguaInglese
Sito web https://developer.android.com/tools/sdk/eclipse-adt.html

https://developer.android.com/sdk/index.html

Il kit di sviluppo software Android (SDK) include una serie completa di strumenti di sviluppo.[2] Tra questi sono presenti: un debugger, librerie, un emulatore portatile basato su QEMU, documentazione, codici esemplificativi e tutorial. Le piattaforme di sviluppo attualmente supportate sono i computer che eseguono 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.[3][4][5]

Fino alla fine del 2014 l'ambiente di sviluppo integrato ufficialmente supportato (IDE) è stato Eclipse utilizzando gli Android Development Tools (ADT) Plugin, anche se ad esempio gli ambienti IntelliJ IDEA[6] e NetBeans[7] supportano pienamente lo sviluppo di Android. A partire dal 2015 Android Studio[8], realizzato da Google e alimentato da IntelliJ, è l'IDE ufficiale di Android. Gli sviluppatori, inoltre, possono utilizzare qualsiasi editor di testo per modificare i file Java o XML e successivamente utilizzare un 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).[9]

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à.[10]

Le applicazioni Android hanno estensione .apk e vengono memorizzate nella cartella /data/app del dispositivo (la cartella è accessibile solo dopo aver effettuato il rooting per motivi di sicurezza ). Il pacchetto APK contiene i file .dex[11](Dalvik executable), file di risorse, ecc.

Android Debug Bridge (ADB)

L'Android Debug Bridge (ADB) è un toolkit incluso nel pacchetto SDK di Android. Si compone di due parti: lato client e lato server che comunicano tra loro. L'ADB è generalmente accessibile attraverso l'interfaccia a linea di comando[12], anche se esistono numerose interfacce grafiche utente per controllare l'ADB.

Il formato per l'emissione dei comandi attraverso l'ADB è solitamente:

adb [-d|-e|-s <serialNumber>] <command>

Ad esempio, le applicazioni Android possono essere salvate dal comando backup come file, a cui viene assegnato backup.ab come nome di default.[13]

In un problema di sicurezza emerso nel marzo 2011, l'ADB stato accusato di agire come vettore per l'installazione di rootkit sui telefoni collegati per sferrare un "attacco alle risorse".[14]

Fastboot

Disambiguazione – "Fastboot" rimanda qui. Se stai cercando la capacità di avvio rapido di un PC, vedi Instant on.

Fastboot è un protocollo diagnostico incluso nel pacchetto SDK utilizzato principalmente per modificare il file system flash di un dispositivo tramite una connessione USB collegata ad un host. È necessario che il dispositivo venga avviato in modalità boot loader o in modalità di avvio secondario, in cui viene eseguita solo l'inizializzazione dei driver indispensabili. Dopo aver abilitato il protocollo sul dispositivo, questo accetterà uno specifico insieme di comandi inviati via USB tramite una riga di comando. Alcuni dei comandi Fastboot più comunemente usati sono:

  • flash - riscrive una partizione usando un'immagine memorizzata nell'host
  • erase - cancella una partizione specifica
  • reboot - riavvia il dispositivo in modalità normale, caricando una partizione di recovery o avviando il boot loader
  • devices - mostra una lista dei dispositivi (con relativo numero di serie) collegati all'host
  • format - formatta una partizione specifica. Il filesystem deve essere riconosciuto dal dispositivo

Android NDK

Le librerie scritte in C e C++ possono essere compilate su supporti ARM, MIPS o x86 ed implementate utilizzando l'Android Native Development Kit (NDK). Le classi possono essere chiamate tramite comandi Java (che può essere implementato sulla Dalvik VM) usando il comando System.loadLibrary, il quale rappresenta una parte delle classi standard di Android Java.[15][16]

Applicazioni complete possono essere create, compilate ed installate utilizzando gli strumenti di sviluppo tradizionali.[17] 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.[18]

Il debugger ADB fornisce una 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 GCC o con il compilatore Intel C++ su un PC standard.[19] 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.[20] Skia dispone di front-end e back-end sia per Win32 sia per Unix, consentendo lo sviluppo di applicazioni multipiattaforma, ed è il motore grafico alla base del browser web Google Chrome.[21]

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[22] e in Visual Studio.[23]

Android Open Accessory Development Kit

La piattaforma Android 3.1 (anche dopo aver effettuato un backport ad Android 2.3.4) introduce il supporto Android Open Accessory, che consente ad un hardware USB esterno (un accessorio USB Android) di interagire con un dispositivo Android in una speciale "modalità accessorio". Quando un dispositivo Android è in modalità accessorio, il supporto collegato si comporta da host USB mentre il dispositivo Android agisce come dispositivo USB. Gli accessori USB Android sono specificamente progettati per collegarsi ai dispositivi Android e per aderire ad un semplice protocollo (Android accessory protocol) che consente loro di rilevare i dispositivi Android che supportano la modalità accessorio.[24]

Supporto Native Go

Dalla versione 1.4 del linguaggio di programmazione Go, la scrittura di applicazioni per Android è supportata senza la necessità di alcun codice Java, benché presenti un ristretto insieme di API.[25]

Strumenti di sviluppo non ufficiali

App Inventor

Lo stesso argomento in dettaglio: App Inventor.

Il 12 luglio 2010 Google ha annunciato la disponibilità di App Inventor, un ambiente di sviluppo online per i programmatori alle prime armi, basato sulla Libreria a Blocchi di Java del MIT e che fornisce l'accesso al GPS del dispositivo, ai dati dell'accelerometro, alle funzioni del telefono, ai messaggi di testo, ai contatti, alla memoria e ai servizi Web, inizialmente compresi Amazon e Twitter. "Abbiamo potuto fare tutto questo perché l'architettura di Android è molto aperta", ha detto il direttore del progetto del MIT Hal Abelson.[26] In fase di sviluppo per oltre un anno[27], lo strumento di editing a blocchi è stato insegnato al corso di informatica ad Harvard, al MIT, a Wellesley, al Trinity college (Hartford) e all'Università di San Francisco, dove il professor David Wolber sviluppò un corso introduttivo di informatica e un libro-tutorial basati su App Inventor destinati agli studenti non frequentanti i corsi di informatica.[28][29]

Nella seconda metà del 2011 Google ha rilasciato il codice sorgente, terminato il suo servizio Web e ha fornito finanziamenti per la creazione del MIT Center for Mobile Learning, guidato dal creatore dell'App Inventor Hal Abelson e dai suoi colleghi del MIT Eric Klopfer e Mitchel Resnick.[30] L'ultima versione distribuita come il risultato della collaborazione fra Google e il MIT è stata rilasciata nel febbraio 2012, mentre la prima versione creata esclusivamente dal MIT è stata lanciata nel marzo 2012[31] ed è stata aggiornata ad App Inventor 2 nel dicembre 2013.[32] Come dal 2014, App Inventor è ora gestito interamente dal MIT.[33]

Basic4android

Basic4android è un prodotto commerciale simile a Simple.[34] È ispirato a Visual Basic 6 e Visual Studio, entrambi della Microsoft. Esso rende la programmazione Android molto più semplice per i programmatori abituati a Visual Basic che trovano difficoltà nel linguaggio Java. Basic4android è molto attiva e vi è un'ampia comunità online di sviluppatori.

Corona SDK

Corona SDK è un kit di sviluppo software (SD) creato da Walter Luh, fondatore di Corona Labs Inc.. Corona SDK permette ai programmatori di creare applicazioni grafiche, per dispositivi iOS e Android, utilizzando il suo linguaggio integrato Lua, che viene sovrapposto al C++ e all'OpenGL. L'SDK utilizza un modello di acquisto basato su abbonamento, senza richiedere alcuna royalty per le app sviluppate, ma imponendo requisiti di branding.

Delphi

Delphi può essere utilizzato per creare applicazioni utilizzando il linguaggio Object Pascal. L'ultima versione è Delphi 10 Seattle, sviluppato da Embarcadero.[35] 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

HyperNext Android Creator (HAC) è un sistema di sviluppo software rivolto a programmatori principianti che può aiutarli a creare le proprie applicazioni Android senza conoscere Java e l'SDK di Android. Si basa su HyperCard, che considera il software come una pila di carte con una sola carta visibile alla volta, risultando quindi adatto per applicazioni di telefonia mobile che presentano solo una finestra visibile alla volta. Il linguaggio di programmazione principale di HAC è chiamato HyperNext ed è vagamente basato sul linguaggio HyperTalk di Hypercard. Esso supporta un numero crescente di sottoinsiemi dell'SDK Android, comprese le sue versioni dei tipi di controllo GUI, e viene eseguito automaticamente in background.

Kivy

Kivy è una libreria open source di Python per lo sviluppo di applicazioni multi-touch con un'interfaccia utente naturale (NUI) supportate da una vasta gamma di dispositivi. Kivy offre la possibilità di mantenere una singola applicazione per numerosi sistemi operativi ("code once, run everywhere"). Kivy dispone di uno strumento apposito per la distribuzione di applicazioni mobili chiamato Buildozer, disponibile solo per Linux. Buildozer è attualmente il software alpha, ma è molto meno ingombrante rispetto ai vecchi metodi di distribuzione Kivy. Le applicazioni programmate con Kivy possono essere eseguite su qualsiasi dispositivo Android.

Lazarus

Lazarus può essere utilizzato per sviluppare applicazioni Android utilizzando Object Pascal (e altri linguaggi Pascal), basato sul compilatore Free Pascal a partire dalla versione 2.7.1.

Processing

L'ambiente processing, che utilizza anche il linguaggio Java, supporta una modalità Android dalla versione 1.5; l'integrazione con la fotocamera e con i sensori del dispositivo è possibile utilizzando la libreria Ketai.

Qt for Android

Qt permette alle app Qt 5 di funzionare sui dispositivi dotati di Android 2.3.3 (livello di API 10) o successivi.[36] Qt è un framework multipiattaforma che può essere supportato da Android, Linux, iOS, OS Sailfish e Windows. Lo sviluppo di applicazioni Qt è eseguito in C++ e QML che richiede sia l'NDK sia l'SDK.[37]

RubyMotion

RubyMotion è un toolchain usato per scrivere applicazioni native mobili in Ruby. A partire dalla versione 3.0, RubyMotion supporta Android. Le applicazioni RubyMotion possono attingere dall'intero set di API di Java, possono utilizzare librerie di parti terze e sono compilate staticamente in codice macchina.[38]

SDL

La libreria SDL offre una possibilità di sviluppo accanto a Java, permettendo lo sviluppo in C e rendendo semplice la portabilità fra l'SDL esistente e le applicazioni native in C. Con l'uso di una piccola shim Java e del JNI l'utilizzo del codice nativo SDL è possibile,[39] permettendo lo sviluppo di videogiochi come Jagged Alliance 2.

Visual Studio 2015

Visual Studio 2015 supporta lo sviluppo multipiattaforma, permettendo agli sviluppatori in C++ di creare progetti da modelli o di creare ad alte prestazioni librerie condivise da includere in altri sistemi. Le sue caratteristiche includono IntelliSense, i punti di interruzione, l'implementazione sul dispositivo e l'emulazione.[40]

Xamarin

Con un codice base in C# condiviso, gli sviluppatori possono utilizzare Xamarin per scrivere app native per iOS, Android e Windows con interfacce utente e per condividere il codice su più piattaforme. Da maggio 2015, oltre 1 milione di sviluppatori in oltre 120 Paesi di tutto il mondo utilizzano i prodotti di Xamarin.

Sviluppo hardware esterno

Fra gli strumenti di sviluppo destinati ad aiutare un dispositivo Android ad interagire con dispositivi esterni possono essere citati: IOIO, Android Open Accessory Development Kit, Microbridge, Triggertrap, ecc.

Android Developer Challenge

L'Android Developer Challenge è stato un concorso per premiare l'applicazione più innovativa per Android. Google ha offerto premi per un totale di 10 milioni di dollari, distribuiti in due round: ADC I e ADC II. ADC I ha accettato presentazioni dal 2 gennaio al 14 aprile 2008. Le 50 proposte più promettenti, annunciate il 12 maggio 2008, hanno ricevuto un premio di $ 25.000 a testa per continuarne lo sviluppo.[41] L'ADC I è terminato all'inizio di settembre con l'annuncio di 20 squadre: dieci hanno ricevuto 275.000 $ ciascuno mentre le restanti 100.000 $ ciascuno.[42]

L'ADC II è stato annunciato il 27 maggio 2009 ed il primo round si chiuse il 6 ottobre 2009.[43] Il primo turno dei vincitori, che include le prime 200 applicazioni, è stato annunciato il 5 novembre 2009, mentre il voto per il secondo turno fu aperto lo stesso giorno e si concluse il 25 novembre. Google annunciò i vincitori di ADC II il 30 novembre: SweetDreams, What the Doodle!? e WaveSecure furono nominati vincitori assoluti della sfida.[44]

Firmware della comunità

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 FLAC e la possibilità di memorizzare le applicazioni scaricate sulla scheda MicroSD.[45] 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.[46]

Il 24 settembre 2009 Google ha pubblicato una lettera di diffida[47] nei confronti dei modder di Cyanogen, citando problemi con la ri-distribuzione delle applicazioni closed source di Google[48] 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

Gli ostacoli nello sviluppo includono il fatto che Android non usa gli standard Java stabiliti, cioè Java SE e Java ME. Ciò impedisce la compatibilità tra le applicazioni Java scritte per quelle piattaforme e quelle scritte per la piattaforma Android. Quest'ultimo utilizza solo la sintassi e la semantica del linguaggio Java, ma non fornisce le librerie e le API in bundle con Java SE o ME. Tuttavia, sul mercato ci sono numerosi strumenti, prodotti da aziende come Myriad Group e UpOnTek, che forniscono servizi di conversione da Java SE ad Android.[49][50][51]

Storia e impatto sul mercato

Il prototipo Sooner[52], predecessore del Dev Phone.

Android è stato creato dalla Open Handset Alliance, guidata da Google. Il genere di feedback ricevuto nella fase iniziale dello sviluppo di app è stato vario.[53] I problemi citati includono bug, mancanza di documentazione, infrastrutture QA inadeguate e nessun sistema di gestione pubblico dei problemi. (Google ha annunciato un rilevatore di bug il 18 gennaio 2008.)[54] Nel dicembre 2007 Adam MacBeth, fondatore della startup MergeLab, dichiarò in merito alla piattaforma che "Le funzionalità non sono presenti, è scarsamente documentata o semplicemente non funziona...Non è chiaramente pronta per il grande pubblico".[55] Tuttavia le applicazioni Android cominciarono ad apparire e la piattaforma venne annunciata una settimana più tardi. La prima app disponibile al pubblico fu il videogioco Snake.[56] L'Android Dev Phone è un dispositivo dotato di SIM e hardware sbloccati che è stato progettato per l'uso da parte degli sviluppatori più esperti. Mentre la maggior parte degli sviluppatori possono utilizzare i comuni dispositivi per testare ed utilizzare le loro applicazioni, alcuni sviluppatori possono scegliere di non utilizzare un dispositivo comunemente in vendita, preferendone uno sbloccato o privo di contratto.

Una versione di anteprima dell'SDK è stata rilasciata il 12 novembre 2007. Il 15 luglio 2008, il team responsabile dell'Android Developer Challenge inviò accidentalmente una e-mail a tutti i partecipanti annunciando che una nuova versione del SDK sarebbe stata disponibile in un'area download "privata". L'e-mail, infatti, era destinata esclusivamente ai vincitori del primo turno dell'Android Developer Challenge. La rivelazione che Google stava fornendo nuove versioni SDK solo per alcuni sviluppatori (mantenendo questo accordo privato) comportò numerose critiche nei confronti della società statunitense da parte della comunità.[57]

Il 18 agosto 2008 fu rilasciato l'Android SDK 0.9 beta, che presentò una libreria API aggiornata ed estesa, miglioramento degli strumenti di sviluppo e un design aggiornato per la schermata Home. Istruzioni dettagliate per l'aggiornamento furono messe a disposizione di coloro che già stavano lavorando con una versione precedente.[58] Il 23 settembre 2008 fu rilasciato l'SDK 1.0 (Release 1).[59] che, secondo le note di rilascio, includeva "principalmente correzioni di bug, anche se sono state aggiunte alcune caratteristiche minori". Sono state incluse anche diverse modifiche API rispetto alla versione 0.9.

A partire dal luglio 2013 sono state sviluppate più di un milione di applicazioni[60] con oltre 25 miliardi di download.[61][62] Una ricerca effettuata a giugno 2011 ha indicato che oltre il 67% degli sviluppatori utilizzavano la piattaforma al momento della pubblicazione .[63] Nel 2012, con circa 105 milioni di dispositivi venduti, Android rappresentava il 68% nel mercato della telefonia mobile.

Note

  1. ^ (EN) Why You Should Go Nexus, su droidlessons.com. URL consultato il 23 agosto 2016 (archiviato dall'url originale il 15 maggio 2013).
  2. ^ (EN) Tools Overview, su developer.android.com, 21 luglio 2009. URL consultato il 24 agosto 2016.
  3. ^ (EN) AIDE- IDE for Android Java C++, su play.google.com. URL consultato il 24 agosto 2016.
  4. ^ (EN) Java Editor, su play.google.com. URL consultato il 24 agosto 2016.
  5. ^ (EN) JavaIDEdroid, su play.google.com. URL consultato il 24 agosto 2016.
  6. ^ (EN) Making development an enjoyable experience, su jetbrains.com. URL consultato il 24 agosto 2016.
  7. ^ (EN) NBAndroid, su plugins.netbeans.org. URL consultato il 24 agosto 2016 (archiviato dall'url originale il 17 ottobre 2018).
  8. ^ (EN) Android Studio, su developer.android.com. URL consultato il 24 agosto 2016.
  9. ^ (EN) Backup & restore Android apps using ADB, su jonwestfall.com, 25 agosto 2009. URL consultato il 24 agosto 2016.
  10. ^ (EN) SDK Tools Release Notes, su developer.android.com. URL consultato il 24 agosto 2016.
  11. ^ (EN) SDK Glossary, su developer.android.com. URL consultato il 24 agosto 2016.
  12. ^ (EN) Command Line Tools, su developer.android.com.
  13. ^ (EN) How to create a full backup of your Android device without root, su techrepublic.com, 6 marzo 2015. URL consultato il 24 agosto 2016.
  14. ^ (EN) Open-Source Vulnerabilities Paint A Target On Android, su darkreading.com, 14 marzo 2011. URL consultato il 24 agosto 2016.
  15. ^ (EN) Android – Invoke JNI Based Methods (Bridging C/C++ And Java), su davanum.wordpress.com, 9 dicembre 2007. URL consultato il 24 agosto 2016.
  16. ^ (EN) java.lang.System, su developer.android.com. URL consultato il 24 agosto 2016.
  17. ^ (EN) Native C applications for Android, su benno.id.au, 13 novembre 2007. URL consultato il 24 agosto 2016 (archiviato dall'url originale il 13 settembre 2009).
  18. ^ (EN) Android NDK, su developer.android.com. URL consultato il 24 agosto 2016.
  19. ^ (EN) Intel C++ Compiler 14.0 for Android, su software.intel.com. URL consultato il 24 agosto 2016.
  20. ^ (EN) Skia source, su src.chromium.org. URL consultato il 24 agosto 2016.
  21. ^ (EN) Skia graphics library in Chrome: first impressions, su atoker.com, 6 settembre 2008. URL consultato il 24 agosto 2016.
  22. ^ (EN) Using Eclipse for Android C/C++ Development, su mhandroid.wordpress.com, 23 gennaio 2011. URL consultato il 24 agosto 2016.
  23. ^ (EN) Using Visual Studio to Develop Native Android Code, su visualgdb.com, 30 aprile 2015. URL consultato il 24 agosto 2016.
  24. ^ (EN) Accessory Development Kit, su developer.android.com. URL consultato il 24 agosto 2016.
  25. ^ (EN) Package app, su godoc.org. URL consultato il 24 agosto 2016.
  26. ^ (EN) Google’s Do-It-Yourself App Creation Software, su nytimes.com, 12 luglio 2010. URL consultato il 24 agosto 2016.
  27. ^ (EN) App Inventor for Android, su research.googleblog.com, 31 luglio 2009. URL consultato il 24 agosto 2016.
  28. ^ (EN) Google brings app-making to the masses, su sfgate.com, 11 dicembre 2009. URL consultato il 24 agosto 2016.
  29. ^ (EN) Learn to build Android apps in hours, su appinventor.org. URL consultato il 24 agosto 2016.
  30. ^ (EN) The MIT roots of Google’s new software, su news.mit.edu, 19 agosto 2010. URL consultato il 24 agosto 2016.
  31. ^ (EN) App Inventor launches second iteration, su news.mit.edu, 30 dicembre 2013. URL consultato il 24 agosto 2016.
  32. ^ (EN) App Inventor Classic, su appinventor.mit.edu. URL consultato il 24 agosto 2016.
  33. ^ (EN) Spy bbm iPhone, su beaverfallsturners.net. URL consultato il 24 agosto 2016 (archiviato dall'url originale il 20 agosto 2016).
  34. ^ (EN) Basic4android, su b4x.com. URL consultato il 24 agosto 2016.
  35. ^ (EN) Delphi Xe7, su embarcadero.com. URL consultato il 24 agosto 2016.
  36. ^ (EN) Qt for Android, su doc.qt.io. URL consultato il 24 agosto 2016.
  37. ^ (EN) Qt Wiki:Android, su wiki.qt.io. URL consultato il 24 agosto 2016.
  38. ^ (EN) Announcing RubyMotion 3.0: Android Platform, WatchKit Apps, and More, su rubymotion.com. URL consultato il 24 agosto 2016.
  39. ^ (EN) About SDL, su libsdl.org. URL consultato il 24 agosto 2016.
  40. ^ (EN) Visual C++ Cross-Platform Mobile, su visualstudio.com. URL consultato il 24 agosto 2016 (archiviato dall'url originale il 28 agosto 2016).
  41. ^ (EN) The Top 50 Applications, su android-developers.blogspot.it. URL consultato il 24 agosto 2016.
  42. ^ (EN) ADC 1 - Winners - Round 2, su androidhd.blogspot.it, 22 settembre 2009. URL consultato il 24 agosto 2016.
  43. ^ (EN) ADC 2 Round 1 Scoring Complete, su android-developers.blogspot.it, 6 ottobre 2009. URL consultato il 24 agosto 2016.
  44. ^ (EN) Announcing the Winners of ADC 2, su android-developers.blogspot.it, 30 novembre 2009. URL consultato il 24 agosto 2016.
  45. ^ (EN) Dream android development, su forum.xda-developers.com. URL consultato il 25 agosto 2016.
  46. ^ (EN) Android 2.1 from Motorola Droid Ported to G1, su redmondpie.com, 30 dicembre 2009. URL consultato il 25 agosto 2016.
  47. ^ (EN) CyanogenMod in trouble?, su androidandme.com, 24 settembre 2009. URL consultato il 25 agosto 2016.
  48. ^ (EN) A Note on Google Apps for Android, su android-developers.blogspot.it, 25 settembre 2009. URL consultato il 25 agosto 2016.
  49. ^ (EN) Myriad's New J2Android Converter Fuels Android Applications Gold Rush, su realwire.com, 19 marzo 2010. URL consultato il 25 agosto 2016.
  50. ^ (EN) J2Android hopes you don't know that Android is Java-based, su javaworld.com, 22 marzo 2010. URL consultato il 25 agosto 2016.
  51. ^ (EN) Myriad CTO: J2Android moves MIDlets to "beautiful" Android framework, su javaworld.com, 31 marzo 2010. URL consultato il 25 agosto 2016.
  52. ^ (EN) Google Sooner prototype appears, shows off one Google's first prototype builds of Android, su androidcentral.com, 6 maggio 2012. URL consultato il 25 agosto 2016.
  53. ^ (EN) Developing apps for Google Android: it’s a mixed bag, su arstechnica.com, 19 dicembre 2007. URL consultato il 25 agosto 2016.
  54. ^ (EN) You can't rush perfection, but now you can file bugs against it, su android-developers.blogspot.it, 18 gennaio 2008. URL consultato il 25 agosto 2016.
  55. ^ (EN) Glitches Bug Google's Android Software, su wsj.com, 19 dicembre 2007. URL consultato il 25 agosto 2016.
  56. ^ (EN) Snake, su freewarelovers.com. URL consultato il 25 agosto 2016.
  57. ^ (EN) Google plays Hide and Seek with Android SDK, su theregister.co.uk, 14 luglio 2008. URL consultato il 25 agosto 2016.
  58. ^ (EN) Upgrading the SDK, su code.google.com. URL consultato il 25 agosto 2016 (archiviato dall'url originale il 13 settembre 2008).
  59. ^ (EN) SDK Archives, su developer.android.com. URL consultato il 25 agosto 2016.
  60. ^ (EN) Google Play Hits 1 Million Apps, su mashable.com, 24 luglio 2013. URL consultato il 25 agosto 2016.
  61. ^ (EN) Android App Stats, su androlib.com. URL consultato il 25 agosto 2016.
  62. ^ (EN) Google: 3 Billion Android Apps Installed; Downloads Up 50 Percent From Last Quarter, su techcrunch.com, 14 aprile 2011. URL consultato il 25 agosto 2016.
  63. ^ (EN) Developer Economics 2011, su visionmobile.com, 8 giugno 2011. URL consultato il 25 agosto 2016 (archiviato dall'url originale il 29 agosto 2016).

Bibliografia

Voci correlate

Altri progetti

Collegamenti esterni

Read more information:

CHNOPS CHNOPS è l'acronimo dei sei elementi maggiormente presenti in chimica organica, ovvero carbonio (C), idrogeno(H), azoto (N), ossigeno (O), fosforo (P) e zolfo (S). Nonostante questi elementi non siano i più presenti sulla crosta terrestre (il contenuto di silicio e alluminio, ad esempio, è di gran lunga maggiore a quello di fosforo), essi sono quelli che stanno alla base della materia vivente. Indice 1 Perché proprio questi 2 Un'eccezione 3 Note 4 Bibliografia 5 Altri progetti Perché…

Artikel ini adalah tentang demografi dari populasi Madagaskar, termasuk kepadatan populasi, etnis, tingkat pendidikan, kesehatan masyarakat, status ekonomi, afiliasi agama, dan aspek lain dari populasi. Populasi Madagaskar sebagian besar berasal dari campuran Austronesia dan Afrika Timur. Populasi Demografi Madagaskar berdasarkan Data FAO tahun 2005, jumlah penduduk dalam ribuan. Kepadatan penduduk Madagaskar tahun 2004. Masalah dengan prakiraan populasi di Madagaskar adalah data yang sudah terl…

1956 film by Robert Rossen Alexander the GreatTheatrical release posterDirected byRobert RossenWritten byRobert RossenProduced byRobert RossenStarringRichard BurtonFredric MarchClaire BloomDanielle DarrieuxCinematographyRobert KraskerEdited byRalph KemplenMusic byMario NascimbeneProductioncompaniesRossen FilmsC.B. Films S.A.Distributed byUnited ArtistsRelease dates March 22, 1956 (1956-03-22) (Royal World Premiere, London)Running time147 minutes (pre-release version); 136 minutes …

ChartresNegaraPrancis Pemandangan kota Chartres Chartres merupakan nama kota di Prancis. Letaknya di bagian tengah. Tepatnya di region Centre, Prancis. Pada tahun 1999, kota ini memiliki jumlah penduduk sebanyak 40.361 jiwa dengan memiliki luas wilayah 16,85 km². Kota ini memiliki angka kepadatan penduduk sebanyak 2.395 jiwa/km². Pranala luar Wikimedia Commons memiliki media mengenai Chartres. Situs resmi Diarsipkan 2011-05-29 di Wayback Machine. lbsPrefektur dari departemen di Prancis Bo…

Manufacturing firm based in Poznań, Poland H. Cegielski – Poznań S.A.FPS 118N PUMA tram of HCP-FPS PoznańCompany typeJoint stock companyIndustryRail transportFounded1846Area servedWorldwideProductsRailroad carWebsite[1] H. Cegielski – Poznań S.A. is a Polish manufacturing company from the city of Poznań. The company is locally known as Ceglorz, and since 1923 has also used the HCP symbol. After the fall of communism, Cegielski became a joint stock company. Currently it has several inter…

CenturiesSingel oleh Fall Out Boydari album American Beauty/American PsychoDirilis09 September 2014 (2014-09-09)[1]Direkam2014Genre Pop rock[2] alternative rock[3] arena rock[4] Durasi3:48Label Island DCD2 Pencipta Michael Fonseca Raja Kumari J.R. Rotem Justin Tranter Andy Hurley Patrick Stump Joe Trohman Suzanne Vega Pete Wentz Produser J.R. Rotem Omega Kronologi singel Fall Out Boy Young Volcanoes (2013) Centuries (2014) Immortals (2014) Video musikCenturie…

В Википедии есть статьи о других людях с такой фамилией, см. Малюк. Василий Васильевич Малюкукр. Василь Васильович Малюк ПредседательСлужбы безопасности Украины с 7 февраля 2023(врио 18 июля 2022 — 7 февраля 2023) Президент Владимир Зеленский Предшественник Иван Баканов Первый…

Besi(II) oksida (feroksida), FeO. Besi(II) klorida tetrahidrat, FeCl2 · 4H2O. Dalam kimia, besi(II) mengacu pada unsur besi dalam keadaan oksidasi +2. Dalam senyawa ionik (garam), atom seperti itu dapat muncul sebagai kation (ion positif) terpisah yang dilambangkan dengan Fe2+. Kata sifat fero atau awalan fero- sering digunakan untuk menentukan senyawa tertentu — seperti dalam feroklorida untuk besi(II) klorida, FeCl2. Kata sifat feri digunakan untuk garam besi(III), yang mengand…

artikel ini perlu dirapikan agar memenuhi standar Wikipedia. Tidak ada alasan yang diberikan. Silakan kembangkan artikel ini semampu Anda. Merapikan artikel dapat dilakukan dengan wikifikasi atau membagi artikel ke paragraf-paragraf. Jika sudah dirapikan, silakan hapus templat ini. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini) Indonesia memiliki jembatan yang menghubungkan suatu daratan dengan daratan lainnya. Beberapa nama-nama jembatan di Indonesia disajikan di bawah ini:…

Ludwig Andreas von FeuerbachLudwig Andreas von FeuerbachLahir(1804-07-28)28 Juli 1804Landshut, BavariaMeninggal13 September 1872(1872-09-13) (umur 68)Rechenberg dekat Nürnberg, Kekaisaran JermanEraFilsafat abad ke-19KawasanFilsafat BaratAliranMaterialisme, HumanismeMinat utamaAgama, KekristenanGagasan pentingAgama sebagai proyeksi luar dari sifat batin manusia Dipengaruhi Hegel Memengaruhi Leconte de Lisle, Karl Marx, Friedrich Engels, Mikhail Bakunin, Max Stirner, Joseph Dietzge…

Artikel ini memiliki beberapa masalah. Tolong bantu memperbaikinya atau diskusikan masalah-masalah ini di halaman pembicaraannya. (Pelajari bagaimana dan kapan saat yang tepat untuk menghapus templat pesan ini) Artikel ini membutuhkan rujukan tambahan agar kualitasnya dapat dipastikan. Mohon bantu kami mengembangkan artikel ini dengan cara menambahkan rujukan ke sumber tepercaya. Pernyataan tak bersumber bisa saja dipertentangkan dan dihapus.Cari sumber: Perubahan standar keselamatan setela…

Pierre-Emile Højbjerg Højbjerg bersama Tottenham Hotspur pada tahun 2022Informasi pribadiNama lengkap Pierre-Emile Kordt Højbjerg[1]Tanggal lahir 5 Agustus 1995 (umur 28)Tempat lahir Kopenhagen, DenmarkTinggi 185 cm (6 ft 1 in)Posisi bermain GelandangInformasi klubKlub saat ini Tottenham HotspurNomor 5Karier junior2003–2007 BK Skjold2007–2009 Copenhagen2009–2012 Brøndby IFKarier senior*Tahun Tim Tampil (Gol)2012–2014 Bayern München II 44 (12)2013–2016 B…

Project ASutradaraJackie ChanProduserRaymond ChowLeonard HoEdward TangDitulis olehJackie ChanEdward TangPemeranJackie ChanSammo HungYuen BiaoSinematograferCheung Yiu TsouPenyuntingPeter CheungTanggal rilis1983Durasi101 menitNegaraHong KongBahasaKantonSekuelProject A Part IIIMDbInformasi di IMDbAMGProfil All Movie Guide Project A Hanzi tradisional: A計劃 Hanzi sederhana: A计划 Alih aksara Mandarin - Hanyu Pinyin: A jìhuà - Wade-Giles: A Chi-hua Yue (Kantonis) - Romanisasi Yale: A Ji hwa - J…

Artikel ini memiliki beberapa masalah. Tolong bantu memperbaikinya atau diskusikan masalah-masalah ini di halaman pembicaraannya. (Pelajari bagaimana dan kapan saat yang tepat untuk menghapus templat pesan ini) Artikel ini tidak memiliki referensi atau sumber tepercaya sehingga isinya tidak bisa dipastikan. Tolong bantu perbaiki artikel ini dengan menambahkan referensi yang layak. Tulisan tanpa sumber dapat dipertanyakan dan dihapus sewaktu-waktu.Cari sumber: Dragon Prima Farma –…

Artikel ini membutuhkan rujukan tambahan agar kualitasnya dapat dipastikan. Mohon bantu kami mengembangkan artikel ini dengan cara menambahkan rujukan ke sumber tepercaya. Pernyataan tak bersumber bisa saja dipertentangkan dan dihapus.Cari sumber: Geodesik dalam relativitas umum – berita · surat kabar · buku · cendekiawan · JSTOR (Desember 2020)Bagian dari seri artikel mengenaiRelativitas umum G μ ν + Λ g μ ν = 8 π…

BaphuonAgamaAfiliasiHinduLokasiLokasiAngkor ThomNegaraKambojaArsitekturTipeKhmerDibuat olehUdayadityawarman II Baphuon (bahasa Khmer: ប្រាសាទបាពួន) adalah sebuah candi di Angkor, Kamboja. Candi ini berlokasi di Angkor Thom, barat laut Bayon. Dibuat pada pertengahan abad ke-11, candi ini bukit candi bertingkat tiga yang dibangun sebagai candi negara Udayadityawarman II yang didedikasikan kepada dewa Hindu Siwa. Referensi Pranala luar BBC, Cambodia completes Angkor temp…

Badan Pengelola Keuangan Haji BPKHGambaran umumSingkatanBPKHDidirikan26 Juli 2017; 6 tahun lalu (2017-07-26)Dasar hukum pendirianUndang-Undang Nomor 34 Tahun 2014Sifatbersifat mandiri dan bertanggung jawab kepada Presiden melalui Menteri AgamaLembaga sebelumnyaBadan Pengelola Dana Abadi UmatStrukturKetua Dewan PengawasFirmansyah N. Nazaroedin[1]Anggota Dewan Pengawas Deni Suardini (anggota, unsur masyarakat); Heru Muara Sidik (anggota, unsur masyarakat); Dawud Arif Khan (anggota, un…

Akiyo NoguchiNoguchi dalam Piala Dunia di Wina pada tahun 2010.Informasi pribadiKewarganegaraanJepangLahir30 Mei 1989 (umur 34)Ryūgasaki, Prefektur Ibaraki, Jepang[1]PekerjaanPanjat tebing profesionalTinggi167 cm (5 ft 6 in)Berat49 kg (108 pon)Situs webhttp://akiyonoguchi.com Karir panjatJenis panjatBouldering, Lead climbingHighest grade Redpoint: 8c+ (5.14c) Bouldering: 8A+ (V12) Known forMemenangkan Piala Dunia bouldering sebanyak 4 ka…

Winifred AshtonLahir21 Februari 1888Blackheath, InggrisMeninggal28 Maret 1965(1965-03-28) (umur 77)London, InggrisNama penaClemence DanePekerjaanNovelist, pengarang dramaKarya terkenalRegiment of Women (1917) Clemence Dane adalah pseudonim dari Winifred Ashton (21 Februari 1888 – 28 Maret 1965), seorang novelis dan pengarang drama Inggris. Kehidupan dan karier Setelah menyelesaikan pendidikannya, ia datang ke Swiss untuk bekerja sebagai guru bahasa Prancis, namun k…

Payung TeduhAlbum studio karya Payung TeduhDirilis2012Direkam2012GenrePop, Jazz, KeroncongDurasi40:13LabelIvy League MusicProduserMondo GascaroPayung Teduh Payung Teduh(2010)Payung Teduh2010 Dunia Batas(2012) Dunia Batas adalah sebuah album studio kedua karya Payung Teduh yang dirilis pada 1 April 2012[1] dengan label Ivy League Music yang merupakan sebuah label indie. Album ini dirilis dalam format CD yang kemudian pada 11 November 2014, pihak label mengumumkan link digital download…

Kembali kehalaman sebelumnya