Android Framework中引入第三方框架jar包
来源:互联网 发布:淘宝双11后生意不好 编辑:程序博客网 时间:2024/04/30 00:59
公司在做framework开发,所以有时候经常需要引入第三方框架更快捷的进行开发,这里我吸取前人的经验,总结如下:
1.比如我现在负责模块是这个/work/current360/alps/packages/apps/Settings,那么我就在此目录下新建一个libs目录,里面存放我需要导入的包,如图:
2.在Android.mk里加入以下字段:
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := okio-1-7-0:libs/okio-1.7.0.jarLOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += okhttp-2-7-5:libs/okhttp-2.7.5.jarLOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += gson-1-7-1:libs/gson-1.7.1.jarinclude $(BUILD_MULTI_PREBUILT)include $(CLEAR_VARS)ifeq ($(strip $(MTK_CLEARMOTION_SUPPORT)),no)LOCAL_ASSET_DIR := $(LOCAL_PATH)/assets_no_clearmotionelseLOCAL_ASSET_DIR := $(LOCAL_PATH)/assets_clearmotionendifLOCAL_JAVA_LIBRARIES := bouncycastle conscrypt telephony-common ims-common \ mediatek-frameworkLOCAL_STATIC_JAVA_LIBRARIES := android-support-v4 android-support-v13 jsr305 \ com.mediatek.lbs.em2.utils \ com.mediatek.settings.extLOCAL_MODULE_TAGS := optionalLOCAL_STATIC_JAVA_LIBRARIES += okio-1-7-0 okhttp-2-7-5 gson-1-7-1LOCAL_SRC_FILES := \ $(call all-java-files-under, src) \ src/com/android/settings/EventLogTags.logtagsLOCAL_RESOURCE_DIR := $(LOCAL_PATH)/resLOCAL_RESOURCE_DIR += $(LOCAL_PATH)/res_extLOCAL_PACKAGE_NAME := SettingsLOCAL_CERTIFICATE := platformLOCAL_PRIVILEGED_MODULE := trueLOCAL_PROGUARD_FLAG_FILES := proguard.flagsifneq ($(INCREMENTAL_BUILDS),) LOCAL_PROGUARD_ENABLED := disabled LOCAL_JACK_ENABLED := incrementalendifinclude frameworks/opt/setupwizard/navigationbar/common.mkinclude frameworks/opt/setupwizard/library/common.mkinclude frameworks/base/packages/SettingsLib/common.mkinclude $(BUILD_PACKAGE)ifeq (,$(ONE_SHOT_MAKEFILE))include $(call all-makefiles-under,$(LOCAL_PATH))endif
我们只需要注意看
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES
include
LOCAL_STATIC_JAVA_LIBRARIES
这四个标签:
第一个标签是自己预置的jar包,里面第一个按照规范写,okio-1-7-0:libs/okio-1.7.0.jar,:前面的标签可以任意写,但是后面就要写libs下的真正路径,比如我的就算放置在libs/okio-1.7.0.jar下,所以写的就是这个,比如我要放置EventBus,那我这样写LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := eventbus-3.1.0-RC:libs/eventbus-3.1.0-RC.jar就没错;
第二个标签是编译预置的jar,必须要写;
第三个标签是清除上面的变量(反正记住加完第三方jar就写这个,防止对后面的java library造成干扰);
第四个就是写libs下jar包的文件名。注意,如果有多个文件就要添加+操作符号,比如上面看到的
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := okio-1-7-0:libs/okio-1.7.0.jar
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += okhttp-2-7-5:libs/okhttp-2.7.5.jar
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += gson-1-7-1:libs/gson-1.7.1.jar
这里后面两个jar就是加了+,同理,LOCAL_STATIC_JAVA_LIBRARIES += okio-1-7-0 okhttp-2-7-5 gson-1-7-1也是如此,同样的标签都需要进行这样操作,不然就是覆盖了,显然不合理,我们要的只是追加。经过这些操作,我们已经完成jar
包的添加,可以很方便的使用了(编译完成也没出错,记得在使用的时候进行导入,framework下的导入还是比较麻烦的)。
- Android Framework中引入第三方框架jar包
- Android 工程中引入第三方jar包的问题
- Android中如何引入第三方jar包
- 如何在Android项目中引入第三方JAR包
- Android开发中引入第三方jar包的方法
- android引入第三方jar包步骤
- Android MK 引入第三方jar包
- android studio引入第三方jar包
- android studio引入第三方jar包
- Android Studio 引入第三方jar包
- eclipse中引入第三方jar包
- android framework中调用第三方的jar包
- android framework中调用第三方的jar包
- android framework中调用第三方的jar包
- android framework中添加使用第三方jar包
- Android开发 之 Android项目中如何正确的引入第三方jar包(工程)
- Android引入第三方jar包的方法
- Android 引入第三方jar包的方法
- Microsoft加入量子计算的竞争
- Azure Cosmos DB技术性解读
- Ubuntu系统下装Atheros网卡搜索不到wifi问题
- VisualSVN错误 Cannot query proxy blanket解决办法
- java算法基础--二分查找
- Android Framework中引入第三方框架jar包
- 多线程进阶InheritableThreadLocal
- 三分熟博士生の阅读理解与问答数据集 | 论文集精选 #03
- Qt排序qSort使用方法
- Oracle之 【RANDOM】使用dbms_random.string产生随机字符串的用法及应用
- 微服务:spring-cloud-archaius 起步
- 94. Binary Tree Inorder Traversal
- Android模拟器上的本机IP地址
- netty实现http服务器