Als Web-Engine setzt Android auf das bewährte Web-Kit, als Datenbank steht SQLite zur Verfügung. Eine Vielzahl von Core Java Libraries stellt Utilities, Collections und IOs zur Verfügung. Applikationen machen von nativen Libraries nur selten direkt Gebrauch. Sie werden in der Regel mit einem Java Application Framework entwickelt. Die Java-Programme werden von der Dalvik, einer speziell für Android entwickelten Java Virtual Machine, ausgeführt. Ein spezielles Format des Java-Programm-Codes erlaubt z.B. ein deutlich schnelleres Aufstarten der Programme. Im Gegensatz zu Suns VM gibt es hier neben Vorteilen im Lizenzmodell auch Leistungsvorteile, die gerade im Embedded-Bereich unerlässlich sind. Dank der schlanken Umsetzung ist es möglich, dass jede Applikation in ihrem eigenen Prozess in einer eigenen VM laufen kann.
Gerade die Eigenschaft, Applikationen als eigene Prozesse laufen zu lassen und sie damit voneinander zu trennen, ist eine der Hauptvorteile dieses Modells. Damit kann sichergestellt werden, dass der Speicher anderer Applikationen nicht korrumpiert werden kann und dass auch einzelne Applikationen nicht das System lahm legen können, indem sie zu viel Ressourcen verbrauchen. Grundsätzlich hat eine Applikation keine Möglichkeit, andere Applikationen oder das Betriebssystem zu beeinflussen. Durch ein Rechte-System wird sichergestellt, dass alle Interaktionen nur nach expliziter Vergabe von Rechten möglich sind. Diese müssen beim Installieren der Applikation vom Benutzer freigegeben werden. Alle Applikationen laufen so in ihren eigenen Sandboxes und haben exakt geregelte Rechte, was eine sehr genaue Kontrolle aller auf Android laufenden Programme erlaubt (Bild 2).