2010-07-09 11 views

Antwort

47

Der Begriff shared library passt nicht perfekt zu Androids NDK, da die .so-Bibliotheken in vielen Fällen nicht wirklich zwischen Anwendungen ausgetauscht werden. Es ist besser, die Bibliotheken zu klassifizieren, die der NDK als statisch und dynamisch erstellt.

Jede Android-Anwendung ist eine Java-Anwendung, und der einzige Einstiegspunkt für den NDK-Code ist das Laden als dynamische Bibliothek und den Aufruf über JNI.

Statische Bibliotheken sind Archive von kompilierten Objektdateien. Sie werden zum Zeitpunkt der Erstellung in anderen Bibliotheken gebündelt. Nicht verwendete Codeteile aus statischen Bibliotheken werden vom NDK entfernt, um die Gesamtgröße zu reduzieren.

Dynamische Bibliotheken werden zur Laufzeit aus separaten Dateien geladen. Sie können statische Bibliotheken enthalten, von denen sie abhängig sind, oder dynamischere Bibliotheken laden.

Also, was Sie eigentlich für die Android-Entwicklung brauchen, ist mindestens eine gemeinsame Bibliothek, die aus Java-Code aufgerufen wird und mit ihren Abhängigkeiten vorzugsweise als statische Bibliotheken verknüpft wird.

+2

sauber prägnant an .. Dank – baash05

+1

Wirklich große Antwort –

+0

Danke, wirklich gute Antwort. Auf den Punkt. –

0

Native gemeinsam genutzte Bibliotheken: Das NDK erstellt diese Bibliotheken oder .so-Dateien aus Ihrem nativen Quellcode. Native statische Bibliotheken: Das NDK kann auch statische Bibliotheken oder A-Dateien erstellen, die Sie mit anderen Bibliotheken verknüpfen können.

Dies ist nach NDK Dokumentation

Verwandte Themen