Próbuję zbudować średniej wielkości projekt w Eclipse. Składa się z głównego projektu aplikacji i dwóch bibliotek Androida. Wszystko działało dobrze, dopóki nie dodałem do głównego projektu bardzo prostej biblioteki JNI.Biblioteka Android NDK: findLibrary zwróciło null
Po uruchomieniu aplikacji na urządzeniu widzę ten wyjątek w LogCat:
11/01 17: 19: 01.421: E/Android Runtime (26569) w java.lang.Runtime.loadLibrary (Runtime.java:429) nie można załadować xxx: findLibrary powrócił zerowy
google wokół podobnych problemów i wierzę, że zrobiłem wszystko poprawnie:
- Jedynym .c pliku i plik Android.mk są umieszczone w folderze „JNI”
- zbudować bibliotekę z NDK-build narzędzia
- biblioteki .so jest prawidłowo umieszczony w „libs \ armeabi” folderu
- widzę, że wynikowy plik apk rzeczywiście zawierają mojego natywną bibliotekę
Kiedy tworzę projekt testowy i link do tego samego kodu natywnego - to działa dobrze. Problem pozostaje w głównym projekcie. Już próbowałem stworzyć projekt Eclipse od podstaw, ale to nie pomogło
Używam Android SDK Tools V.16
Czy ktoś może mi pomóc z sugestią?
Dzięki!
Czy możesz wyjaśnić, co masz na myśli? Obecnie mam ten sam problem, ale jestem zdezorientowany przez twoją konfigurację. Mam pojedynczy projekt Android w zależności od pojedynczej biblioteki JNI, w której znajduje się tylko jeden plik .c/.h. – JuiCe
@JuiCe Myślę, że twój problem nie jest związany z tym, czego doświadczyłem. Mój problem został spowodowany przez próbę załadowania biblioteki JNI znajdującej się w projekcie biblioteki Androida. Powinieneś sprawdzić inne posty na ten temat. – Anton
Ale działa, dziękuję za odpowiedź. – JuiCe