Bättre utvecklarverktyg till Android

Postat:
18:07 - 2009-06-26
Skribent:
| droidgren
Kommentarer:
4

c-droidUtvecklarteamet på Android har släppte igår nya utvecklingsverktyg till Android. Många av utvecklarna till Android har efterfrågat möjligheter för att programmera närmare kontakt med hårdvaran. Därför har Google nu släppt ett såkallat ”Native Development Kit” (NDK), vilket möjliggör för att utvecklarna att skapa program med inslag av kod (C/C++) som står närmare hårdvaran.

Tidigare har det endast att varit möjligt använda C/C++ via javaanrop (JNI). Men nu med Androids NDK kommer det vara möjligt att kompilera C/C++ direkt för ARM processorn. Detta innebär möjligheter för prestandaförbättringar i cpu-krävande applikationer som  t. ex. fysikkrävande spel och vid signalbehandling. Bland annat så hoppas google på att släppa support för OpenGL ES i framtiden.

Samtidigt som Google släpper Android NDK Release 1 så passar de på att släppa en mindre säkerhetsuppdatering till Androids SDK 1.5 Release 1, som nu blir Release 2.

Idag använder sig Android använder sig av Dalvik Virtual Machine. En Virtutal Machine, (VM) är ett system som körs av systemet. I systemet körs sedan programmen som därför inte har någon ”direktkontakt” med hårvaran. En Virtuell maskin brukar därför förklaras som en slags sandlåda där man kan ”leka” utan risk att den yttre världen tar skada. Fördelen med detta är, i korta drag,  att man får ett säkrare och stabilare system. Ett VM är kanske ett måste på ett system som Android, där mjukvaror distribueras i rasande takt. Nackdelen med en virtual machine är all extra beräkningskraft (overhead) som behövs för att upprätthålla den virtuella miljön. Till exempel om man vill göra ett mycket krävande beräkningar som tex fysikberäkningar i spel så kan vinna mycket prestanda om kan göra dessa beräkningar direkt via processorn. Därför är Androids NDK ett mycket välkommet för hardcore programmerare som har saknat mer ”to the metal” programmering.

NDK:n innehåller:

  • A set of tools and build files used to generate native code libraries from C and C++ sources
  • A way to embed the corresponding native libraries into application packages files (.apks) that can be deployed on Android devices
  • A set of native system headers and libraries that will be supported in all future releases of the Android platform, starting from Android 1.5
  • Documentation, samples, and tutorials

Läs mer och källor:

Officella Android bloggen: Android-developers

Officiella Google Gruppen- Android NDK

Ed Burnette, Zdnet

Tack till Andreas för tipset!