Android SDKEdit
October 2009; 11 years ago
Java
Cross-platform
inglese
IDE, SDK
developer.android.com/sdk/index.html
Android software development kit (SDK) include un set completo di strumenti di sviluppo. Questi includono un debugger, librerie, un emulatore portatile basato su QEMU, documentazione, codice di esempio e tutorial., Le piattaforme di sviluppo attualmente supportate includono computer che eseguono Linux (qualsiasi distribuzione Linux desktop moderna), Mac OS X 10.5.8 o versioni successive e Windows 7 o versioni successive. A partire da marzo 2015, l’SDK non è disponibile su Android stesso, ma lo sviluppo del software è possibile utilizzando applicazioni Android specializzate.,
Fino alla fine del 2014, l’integrated Development Environment (IDE) ufficialmente supportato era Eclipse che utilizzava il plugin Android Development Tools (ADT), anche se IntelliJ IDEA IDE (tutte le edizioni) supporta pienamente lo sviluppo di Android, e NetBeans IDE supporta anche lo sviluppo di Android tramite un plugin. A partire dal 2015, Android Studio, realizzato da Google e alimentato da IntelliJ, è l’IDE ufficiale; tuttavia, gli sviluppatori sono liberi di utilizzare gli altri, ma Google ha chiarito che ADT è stato ufficialmente deprecato dalla fine del 2015 per concentrarsi su Android Studio come IDE Android ufficiale., Inoltre, gli sviluppatori possono utilizzare qualsiasi editor di testo per modificare i file Java e XML, quindi utilizzare gli strumenti della riga di comando (sono necessari Java Development Kit e Apache Ant) per creare, creare ed eseguire il debug di applicazioni Android e controllare i dispositivi Android collegati (ad esempio, innescando un riavvio, installando i pacchetti software in remoto).
I miglioramenti all’SDK di Android vanno di pari passo con lo sviluppo complessivo della piattaforma Android. L’SDK supporta anche le versioni precedenti della piattaforma Android nel caso in cui gli sviluppatori desiderano indirizzare le loro applicazioni su dispositivi meno recenti., Gli strumenti di sviluppo sono componenti scaricabili, quindi dopo aver scaricato l’ultima versione e la piattaforma, le piattaforme e gli strumenti più vecchi possono anche essere scaricati per i test di compatibilità.
applicazioni Android sono confezionati in .formato apk e memorizzato nella cartella/data/app
sul sistema operativo Android (la cartella è accessibile solo all’utente root per motivi di sicurezza). Pacchetto APK contiene .file dex (file di codice byte compilati chiamati eseguibili Dalvik), file di risorse, ecc.,
Android SDK Platform ToolsEdit
Gli Android SDK Platform Tools sono un sottoinsieme scaricabile separatamente dell’SDK completo, costituito da strumenti da riga di comando comeadb
efastboot
.
Android Debug Bridge (ADB)Modifica
Android Debug Bridge (ADB) è uno strumento per eseguire comandi su un dispositivo Android collegato. Il demoneadbd
viene eseguito sul dispositivo e il clientadb
avvia un server in background per multiplexare i comandi inviati ai dispositivi., Oltre all’interfaccia a riga di comando, esistono numerose interfacce utente grafiche per controllare adb.
Il formato per l’emissione dei comandi è tipicamente:
adb <command>where -d is the option for specifying the single USB-attached device, -e for the single running Android emulator on the computer, -s for specifying a USB-attached device by its unique serial number.If there is only one attached device or running emulator, these options are not necessary.
Ad esempio, le applicazioni Android possono essere salvate dal comandobackup
in un file, il cui nome èbackup.ab
per impostazione predefinita.
In un problema di sicurezza segnalato nel marzo 2011, ADB è stato preso di mira come vettore per tentare di installare un rootkit sui telefoni collegati utilizzando un “attacco di esaurimento delle risorse”.
FastbootEdit
Fastboot è un protocollo e ha uno strumento con lo stesso nome incluso con il pacchetto SDK Android utilizzato principalmente per modificare il file system flash tramite una connessione USB dal computer host. Richiede che il dispositivo sia avviato in un boot loader o in una modalità di caricamento del programma secondario, in cui viene eseguita solo l’inizializzazione hardware di base. Dopo aver abilitato il protocollo sul dispositivo stesso, accetterà un set specifico di comandi inviati tramite USB utilizzando una riga di comando., Alcuni dei comandi fastboot più comunemente usati includono:
- flash – riscrive una partizione con un’immagine binaria memorizzata sul computer host.
- erase-cancella una partizione specifica.
- reboot-riavvia il dispositivo nel sistema operativo principale, nella partizione di ripristino del sistema o nel suo boot loader.
- dispositivi-visualizza un elenco di tutti i dispositivi (con il numero di serie) collegati al computer host.
- format-formatta una partizione specifica; il file system della partizione deve essere riconosciuto dal dispositivo.,
Android NDKEdit
giugno 2009; 11 anni fa
C e C++
- Windows Vista e versioni successive
- OS X 10.,10 e successive
- Linux
IA-32 (solo per Windows) o x86-64 (Windows, macOS e Linux)
inglese
SDK
developer.android.com/ndk/
Il codice scritto in C/C++ può essere compilato per ARM o x86 codice nativo (o a 64 bit, varianti) usando Android Native Development Kit (NDK). L’NDK utilizza il compilatore Clang per compilare C / C++., GCC è stato incluso fino a NDK r17, ma rimosso in r18 in 2018.
Le librerie native possono essere chiamate dal codice Java in esecuzione sotto il Runtime Android usandoSystem.loadLibrary
, parte delle classi Java standard di Android.
Gli strumenti da riga di comando possono essere compilati con NDK e installati usando adb.
Android utilizza Bionic come libreria C e LLVM libc++ come libreria standard C++., L’NDK include anche una varietà di altre API: compressione zlib, grafica OpenGL ES o Vulkan, audio OpenSL ES e varie API specifiche per Android per cose come la registrazione, l’accesso alle telecamere o l’accelerazione delle reti neurali.
L’NDK include il supporto per CMake e il propriondk-build
(basato su GNU Make). Android Studio supporta l’esecuzione di uno di questi da Gradle. Altri strumenti di terze parti consentono di integrare NDK in Eclipse e Visual Studio.,
Per la profilazione della CPU, NDK include anche simpleperf che è simile allo strumento Linux perf, ma con un supporto migliore per Android e in particolare per stack misti Java / C++.
Android Open Accessory Development KitEdit
La piattaforma Android 3.1 (anche backportata ad Android 2.3.4) introduce il supporto per gli accessori Android Open, che consente all’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, l’accessorio collegato funge da host USB (alimenta il bus ed enumera i dispositivi) e il dispositivo Android funge da dispositivo USB. Gli accessori USB Android sono specificamente progettati per essere collegati a dispositivi Android e aderiscono a un semplice protocollo (Android Accessory protocol) che consente loro di rilevare i dispositivi Android che supportano la modalità accessorio.