Tengo una biblioteca compartida libfoo.so y necesito usarla en mi aplicación de Android.cómo incluir bibliotecas compartidas precompiladas en apk con eclipse
Mi primer intento fue tener en Android.mk:
include $(CLEAR_VARS)
LOCAL_MODULE := test
LOCAL_SRC_FILES := test.cpp
LOCAL_LDLIBS := -L$(PATH_TO_FOO) -lfoo
include $(BUILD_SHARED_LIBRARY)
en mi actividad, que tienen:
statis
{
System.loadLibrary("foo");
}
Esto construye correctamente, sin embargo, me di cuenta de que duerma creado apk incluyen libtal. entonces (también veo que no está copiado a libs/armeabi). Supongo que por esa razón tengo UnsatisfiedLinkError al ejecutar mi aplicación.
vi en algunos otros mensajes que tengo que agregar $ (PREBUILD_SHARED_LIBRARY), por lo que añadir lo siguiente a mi Android.mk:
include $(CLEAR_VARS)
LOCAL_MODULE:= foo
LOCAL_SRC_FILES := $(FOO_PATH)/libfoo.so
include $(PREBUILD_SHARED_LIBRARY)
Pero ahora estoy consiguiendo el error de compilación:
foo: LOCAL_SRC_FILES points to a missing file.
Estoy seguro de que la ruta es correcta. Tenga en cuenta que libfoo.so tenía originalmente el número de versión al final, aunque tuve que eliminarlo (y dejar solo .so) desde que se quejó ndk-build.
¿Qué estoy haciendo mal?
Esto no funciona para mí (ADT22, Indigo, NDK-r9). La lib se elimina en la compilación. – WindRider