我想在内置的Android应用程序中添加外部第三方jar文件。
我在Android.mk中添加了LOCAL_CLASSPATH变量,因此编译正常。但是在运行时,它无法找到JAR中的类定义。
我需要设置哪个变量来在.dex / .apk中添加第三方JAR?
TIA。
答案 0 :(得分:16)
一个例子不仅仅是说话。
...
LOCAL_STATIC_JAVA_LIBRARIES := libmylibs
LOCAL_PACKAGE_NAME := myapp
...
include $(BUILD_PACKAGE)
##################################################
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libmylibs:mylib.jar
include $(BUILD_MULTI_PREBUILT)
注意:将“mylib.jar”放在项目根目录。
答案 1 :(得分:13)
以下是我用来解决问题的方法:
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := path_to_jar_file.jar
include $(BUILD_MULTI_PREBUILT)
这应该在Android.mk
include $(BUILD_PACKAGE)
中添加
您还需要在LOCAL_STATIC_JAVA_LIBRARIES
中指定库名称以进行编译。
答案 2 :(得分:0)
添加LOCAL_STATIC_JAVA_LIBRARIES
& LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES
旗帜。
并将LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES
放在包含$(BUILD_PACKAGE)
&包括$(BUILD_MULTI_PREBUILT)
。
没关系。感谢网址a2ronus提供的。
答案 3 :(得分:0)
LOCAL_STATIC_JAVA_LIBRARIES := \
other libs \
your_jar
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := your_jar:jar_path/jar_file.jar
include $(BUILD_MULTI_PREBUILT)
答案 4 :(得分:-2)
在Eclipse中选择修改构建路径并选择添加外部jar,然后选择要包含的jar。