如何包含许多共享库。所以要构建android apk

如何包含许多共享库。所以要构建android apk,android,eclipse,opencv,java-native-interface,Android,Eclipse,Opencv,Java Native Interface,我想使用towextern库来构建android应用程序,使用surf算法跟踪对象,所以我使用了本教程 第一个库是libobjtrack\u opencv\u jni.so(用于跟踪)和另两个库是libopencv\u java.so和libobjtrack\u opencv\u jni.so 我最终得到了这个结果: Android.mk: LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := sift_preb

我想使用tow
extern
库来构建android应用程序,使用surf算法跟踪对象,所以我使用了本教程

第一个库是
libobjtrack\u opencv\u jni.so
(用于跟踪)和另两个库是libopencv\u java.so和
libobjtrack\u opencv\u jni.so
我最终得到了这个结果:

Android.mk:

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE    := sift_prebuilt
LOCAL_SRC_FILES := libnonfree.so
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE    := opencv_java_prebuilt
LOCAL_SRC_FILES := libopencv_java.so
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)
LOCAL_MODULE    := objtrack_opencv_jni
LOCAL_SRC_FILES := libobjtrack_opencv_jni.so
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
OPENCV_LIB_TYPE        := STATIC
OPENCV_INSTALL_MODULES:=on
OPENCV_CAMERA_MODULES:=off
include C:/OpenCV-2.4.5-android-sdk/sdk/native/jni/OpenCV.mk
LOCAL_C_INCLUDES:= C:/OpenCV-2.4.5-android-sdk/sdk/native/jni/include
LOCAL_MODULE    := test_sift12
LOCAL_CFLAGS    := -Werror -O3 -ffast-math
LOCAL_LDLIBS    += -llog -ldl
LOCAL_SHARED_LIBRARIES := sift_prebuilt opencv_java_prebuilt objtrack_opencv_jni
LOCAL_SRC_FILES := test_sift.cpp
include $(BUILD_SHARED_LIBRARY)
构建成功,我得到了
测试\u sift12。因此
但在运行
.apk
时不起作用。。我认为问题在于在
android.mk
文件中使用
prebuild\u SHARED\u LIBRARY

我需要您的帮助

加载库,您希望在活动中使用这些库

像这样

public class YourClassName extends Activity {

.....

//add the following code at the end of the class


  static 
  {
      System.loadlibrary("opencv_java");
      System.loadlibrary("objtrack_opencv_jni");
      System.loadlibrary("nonfree");
      System.loadlibrary("test_sift12");
   }
}
我建议你改变你的名字如下

LOCAL_MODULE    := sift_prebuilt

记住不要忘记修改
本地共享库中的名称

LOCAL_MODULE    := nonfree
LOCAL_MODULE    := opencv_java_prebuilt
LOCAL_MODULE    := opencv_java