如何链接到Android 2.1中的jnigraphics?

如何链接到Android 2.1中的jnigraphics?,android,android-ndk,Android,Android Ndk,我有一个使用jnigraphics的应用程序,但我需要它在Android 2.1上可用(因为大约25%的用户仍然使用它)。我正在尝试捆绑它,但链接有困难 我的Android.mk如下: LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := jnigraphics-prebuilt LOCAL_SRC_FILES := lib/libjnigraphics.so LOCAL_EXPORT_C_INCLUDES :=

我有一个使用jnigraphics的应用程序,但我需要它在Android 2.1上可用(因为大约25%的用户仍然使用它)。我正在尝试捆绑它,但链接有困难

我的Android.mk如下:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := jnigraphics-prebuilt
LOCAL_SRC_FILES := lib/libjnigraphics.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include

include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)

LOCAL_MODULE    := yyy
LOCAL_SRC_FILES := yyy.c
LOCAL_SHARED_LIBRARY := jnigraphics-prebuilt
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
LOCAL_LDLIBS    += -lm -llog
#LOCAL_CFLAGS    += -O3

include $(BUILD_SHARED_LIBRARY)
它现在可以识别
#include
(我在添加C#u INCLUDES行之前遇到了一个错误),但似乎仍然没有链接库,因为在构建时,我得到了对(显然)成功包含的头文件中的符号的未定义引用:

Prebuilt       : libjnigraphics.so <= jni/lib/
Install        : libjnigraphics.so => libs/armeabi/libjnigraphics.so
Compile thumb  : yyy <= yyy.c
SharedLibrary  : libyyy.so
/home/xxx/w/zzz/obj/local/armeabi/objs/yyy/yyy.o: In function `Java_yyy_yyy_yyy_MainActivity_yyy':
/home/xxx/w/zzz/jni/yyy.c:143: undefined reference to `AndroidBitmap_getInfo'
非常感谢Richard Puckett提供的解决方案

更新2:

供应商(以及像CY这样的固件mod)可能会干扰这个API,所以不应该依赖它

public native static byte[] doYYY(Bitmap bitmap); static {
    System.loadLibrary("jnigraphics");
    System.loadLibrary("yyy");
}