Integrando MuPDF como un proyecto de biblioteca (Android)

 C Programming >> Programación C >  >> Tags >> PDF
Integrando MuPDF como un proyecto de biblioteca (Android)


Así que he construido este proyecto basado en un lector de pdf (MuPDF). Usé ndk-build para eso. El nombre de este proyecto es ChoosePDFActivity. Sé que se ha creado correctamente porque puedo ver un archivo .so dentro de mi libs/armrabi-v7a/THISISTHEFILE.so .
Mi pregunta es, ¿cómo convierto correctamente este proyecto en un proyecto de biblioteca y lo ejecuto desde otro proyecto?


Intenté marcarlo como un proyecto de biblioteca y agregarlo a la ruta de compilación de mi proyecto principal, pero obtengo


Tenga en cuenta que estoy usando Mupdf-1.5 (el último actualmente)



entonces qué hago ?


el nombre de mi biblioteca es libmupdf.
Tenga en cuenta que soy nuevo en Android-ndk. No tengo ninguna carpeta jni en mi proyecto principal, solo en el proyecto de la biblioteca.
Este es el error completo.



Por favor ayúdenme, me está matando por un par de días. Gracias de antemano.


este es mi Android.mk:


LOCAL_PATH := $(call my-dir)
TOP_LOCAL_PATH := $(LOCAL_PATH)
MUPDF_ROOT := ../..
ifdef NDK_PROFILER
include android-ndk-profiler.mk
endif
include $(TOP_LOCAL_PATH)/Core.mk
include $(TOP_LOCAL_PATH)/ThirdParty.mk
include $(CLEAR_VARS)
LOCAL_C_INCLUDES := \
jni/andprof \
$(MUPDF_ROOT)/include \
$(MUPDF_ROOT)/source/fitz \
$(MUPDF_ROOT)/source/pdf
LOCAL_CFLAGS :=
LOCAL_MODULE := mupdf
LOCAL_SRC_FILES := mupdf.c
LOCAL_STATIC_LIBRARIES := mupdfcore mupdfthirdparty
ifdef NDK_PROFILER
LOCAL_CFLAGS += -pg -DNDK_PROFILER
LOCAL_STATIC_LIBRARIES += andprof
else
endif
LOCAL_LDLIBS := -lm -llog -ljnigraphics
ifdef SSL_BUILD
LOCAL_LDLIBS += -L$(MUPDF_ROOT)/thirdparty/openssl/android -lcrypto -lssl
endif
include $(BUILD_SHARED_LIBRARY)

Aquí hay una instantánea de mis proyectos. Hay dos proyectos destacados, son de los que se habla, con ChoosePDFActivity como el proyecto de la biblioteca.
,
Vale, algo como esto funcionará en mi caso :
¿Es posible tener un proyecto completo dentro de mi compilación final? Solo necesito pasarle UNA intención desde mi proyecto principal, y todo lo demás será manejado por ChoosePdf...
proyecto.


PD
Noté que solo hay un armeabi-v7a. Entonces, ¿hay alguna forma de compilar mupdf para otras arquitecturas también?


EDITAR
Para aquellos que quieren renderizar PDF en Android, Android L tiene (finalmente) las API para hacer posible el renderizado nativo de PDF.



No