Ich habe ein Android-Projekt mit einer libs
Ordnerstruktur wie folgt:
foo
und bar
sind Bibliotheken von Drittanbietern, mystuff
ist meine eigene Bibliothek von einem separaten Android JNI-Projekt, das gnustl_shared
benötigt, das aus demselben JNI-Projekt stammt.
Wenn ich mein Projekt in Eclipse erstelle, kann ich den Inhalt der generierten APK mit unzip -l
anzeigen und es zeigt tatsächlich, dass alle diese Bibliotheksdateien enthalten sind.
Nach der Installation der APK enthält der Ordner /data/data/com.myproject/lib
jedoch keine libgnustl_shared.so
, obwohl die anderen Bibliotheken vorhanden sind.
Dies führt unweigerlich zu folgendem Fehler:
%Vor% Als eine Gesundheitsüberprüfung habe ich adb push ./libs/armeabi/libgnustl_shared.so /data/data/com.myproject/lib
ausgeführt und sicher genug, die Anwendung startet wie erwartet.
Ich sehe im Buildprotokoll oder in der Eclipse-Konsole nichts, was darauf hindeutet, dass beim Erstellen oder Installieren der App Probleme aufgetreten sind.
libgnustl_shared.so
mit meiner Anwendung installiert wird? Bitte lassen Sie mich in einem Kommentar wissen, ob es spezifische Informationen gibt, die mir helfen können.
Ich habe ein Android-Projekt mit einer %code% Ordnerstruktur wie folgt:
%Vor%%code% und %code% sind Bibliotheken von Drittanbietern, %code% ist meine eigene Bibliothek von einem separaten Android JNI-Projekt, das %code% benötigt, das aus demselben JNI-Projekt stammt.
Wenn ich mein Projekt in Eclipse erstelle, kann ich den Inhalt der generierten APK mit %code% anzeigen und es zeigt tatsächlich, dass alle diese Bibliotheksdateien enthalten sind.
Nach der Installation der APK enthält der Ordner %code% jedoch keine %code% , obwohl die anderen Bibliotheken vorhanden sind.
Dies führt unweigerlich zu folgendem Fehler:
%Vor%Als eine Gesundheitsüberprüfung habe ich %code% ausgeführt und sicher genug, die Anwendung startet wie erwartet.
Ich sehe im Buildprotokoll oder in der Eclipse-Konsole nichts, was darauf hindeutet, dass beim Erstellen oder Installieren der App Probleme aufgetreten sind.
Bitte lassen Sie mich in einem Kommentar wissen, ob es spezifische Informationen gibt, die mir helfen können.
Ich denke, dass libgnustl_shared.so unter / armeabi-v7a nicht unter / armeabi
benötigt wirdVersuchen Sie, libgnustl_shared.so nach / armeabi-v7a
zu kopierenSehen Sie sich die Antwort hier an: So verknüpfen Sie eine beliebige Bibliothek in ndk Anwendung Das Problem liegt höchstwahrscheinlich in Ihrer Android.mk-Datei. Sie sollten eine Linie wie die unten haben:
%Vor%Wenn nicht, dann schließen Sie Ihre gemeinsame Bibliothek nicht ein.
Sehen Sie sich die Antwort hier an: So verknüpfen Sie eine beliebige Bibliothek in ndk Anwendung Das Problem liegt höchstwahrscheinlich in Ihrer Android.mk-Datei. Sie sollten eine Linie wie die unten haben:
%Vor%Wenn nicht, dann schließen Sie Ihre gemeinsame Bibliothek nicht ein.
Tags und Links android android-ndk jni