Da oggi chi sviluppa applicazioni per Android ha la possibilità di uscire dalla “gabbia dorata” della macchina virtuale Dalvik , all’interno della quale girano tutte le odierne applicazioni scritte per il giovane OS di Google, e accedere direttamente al codice macchina sottostante (l’ ARMv5TE ). A renderlo possibile è l’ Android 1.5 Native Development Kit (NDK), che si va ad affiancare all’ SDK preesistente .
L’NDK permette agli sviluppatori di scrivere porzioni di un’applicazione utilizzando i linguaggi nativi di Android, C e C++, e le librerie libc (C library), libm (math library), libz (ZLib compression library) e liblog (utilizzata per inviare messaggi logcat al kernel).
Il principale vantaggio nell’utilizzare codice nativo è dato dalla possibilità di bypassare tutti i controlli e le mediazioni della virtual machine di Android, sfruttando più a fondo la potenza della CPU. Ciò serve soprattutto quando si ha necessità di scrivere applicazioni che facciano un uso intensivo della CPU ma un moderato uso della RAM, e magari si voglia riutilizzare codice C/C++ già esistente.
Come si spiega in questo post dell’Android Developers Blog, l’uso dell’NDK va ben ponderato: tagliare fuori la Dalvik virtual machine, si avvisa nell’articolo, significa “che le vostre applicazioni saranno più complicate, avranno una compatibilità ridotta, non potranno accedere alle API del framework e saranno più difficili da debuggare”.
“Tenete a mente che non tutte le applicazioni Android possono trarre benefici dall’uso dell’NDK – si legge nel succitato post – Come sviluppatori, dovrete bilanciare vantaggi e svantaggi, e questi ultimi sono numerosi!”. Tra le applicazioni che potrebbero meglio adattarsi all’uso dell’NDK il post cita quelle che eseguono complesse simulazioni fisiche e che elaborano i segnali.
L’Android 1.5 NDK Release 1 può essere scaricato da qui per Windows, Mac OS X e Linux. L’Android 1.5 SDK, necessario per l’installazione dell’NDK, è invece disponibile qui .
Alessandro Del Rosso