android framework层引入第三方jar

最近在修改android系统源码,想引入第三方jar文件(weka.jar),一开始直接将weka.jar添加到BUILD PATH,虽然调用的时候没有报错,但是当编译的时候,打印找不到weka.jar,后来找到如下方法成功调用第三方jar。

1.添加weka.jar
在mydroid/frameworks/opt/目录下新建weka目录,用于存放weka.jar包和mkfile文件,将weka.jar拷贝到该目录下,然后新建Android.mk文件,Android.mk文件内容如下:

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := weka:weka.jar
include $(BUILD_MULTI_PREBUILT)

2.添加jar到framework的jar包中
修改android系统源码mydroid/frameworks/base/Android.mk文件:

# ====  the library  =========================================
include $(CLEAR_VARS)

LOCAL_SRC_FILES := $(ext_src_files)

LOCAL_NO_STANDARD_LIBRARIES := true
LOCAL_JAVA_LIBRARIES := core
LOCAL_JAVA_RESOURCE_DIRS := $(ext_res_dirs)
#-------add weka.jar----
LOCAL_STATIC_JAVA_LIBRARIES := weka 
#-------end add.
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := ext

LOCAL_DX_FLAGS := --core-library

include $(BUILD_JAVA_LIBRARY)

3.编译相应模块

mmm mydroid/frameworks/opt/weka/
mmm mydroid/frameworks/base/

4.在工程文件中将weka.jar添加到BUID PATH
5.到这一步就可以成功通过编译

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容