Android中使用第三方jar包
步骤:
方法1:Eclipse下,
右键工程, Build path, java build path,
选择libraries 在右边的按钮中点击“Add Library” 选择“User library”,
点击“下一步” 点击“User librarys”按钮 在出现的界面中点击“New..”按钮 在弹出的界面中随便起一个名字,点击“确定”
点击“Add jars”按钮选择第三方jar包,点击“确定”完成。
后面的步骤很重要,如果不进行后面的操作。
在Eclipse里显示编译通过,不会有错误,但在模拟器或真机上运行的时候可能就会出现java.lang.noclassdeffounderror之类的错误:
1、在Android项目根目录下新建一个libs文件夹;
2、把你需要的导入的第三方Jar包复制进这个目录;
3、在libs目录上点右键,选Bulid path –> Use as source folder。
方法2,android源码环境下,
1,将out/target/common/obj/JAVA_LIBRARIES/powersave_intermediates下的classess.jar文件放在自己的工程目录下。out/target/product/ventana/system/framework目录下的jar包用以下方法经验证是不好使的,因为他已经打成dex文件了,在工程里引用其包是不行的;
2,修改android.mk文件,如下:
LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_STATIC_JAVA_LIBRARIES := libpowerjar libpowersave
LOCAL_PACKAGE_NAME := testPowerjar
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE) ############################################## include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := libpowerjar:classes.jar libpowersave:testlily.jar include $(BUILD_MULTI_PREBUILT)
# Use the folloing include to make our test apk. include $(call all-makefiles-under,$(LOCAL_PATH))
解释:LOCAL_STATIC_JAVA_LIBRARIES :=libpowerjar和LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES :=libpowerjar:classes.jar其实libarity是个名字可以随便取,两个属性的值要一样就好了,但是后面那个冒号里面就一定要写你的jar包名,你的jar包一定放在工程的根目录就好了。我这里是使用两个jar包的例子。
3,源码目录下编译即可:# mmm package/app/testPowerjar,如果出错提示说找不到jar包所打的package,那么请#touchclasses.jar 即可.
生成jar包:
方法1:Eclipse下, 1. 创建java 或android project; 2. 工程属性java build path->Libraries中加入android.jar 3. package explorer中右键点击工程,export java->jar file.
方法2:Android源码环境下
1,修改Android.mk文件,
LOCAL_PATH:= $(call my-dir) # the library # ============================================================ include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional LOCAL_SRC_FILES := powersave.java LOCAL_MODULE := powersave
include $(BUILD_JAVA_LIBRARY)
# additionally, build unit tests in a separate .apk include $(call all-makefiles-under,$(LOCAL_PATH))
2,编译 # mmm powersave(自己的模块)
其中,BUILD_JAVA_LIBRARY代表生成jar包,包的位置放在out/target/product/ventana/system/framework和out/target/common/obj/JAVA_LIBRARIES/powersave_intermediates(自己的模块)下,
参考:http://blog.chinaunix.net/uid-26524139-id-3161858.html
Android中使用第三方jar包的更多相关文章
- 【转】Android中引入第三方Jar包的方法(java.lang.NoClassDefFoundError解决办法)
原文网址:http://www.blogjava.net/anchor110/articles/355699.html 1.在工程下新建lib文件夹,将需要的第三方包拷贝进来.2.将引用的第三方包,添 ...
- 关于如何正确地在android项目中添加第三方jar包
在android项目中添加第三方jar包虽然不是一个很复杂的问题,但是确实给很多开发者带来了不小的困扰.我自己就曾经碰到过calss not found exception.error inflati ...
- Android Studio 在项目中引用第三方jar包
在Android Studio项目中引用第三方jar包的方法: 步骤: 1.在build.gradle文件中添加如下代码: 备注:要添加在Android作用域下 sourceSets { main { ...
- Android Studio导入第三方jar包或依赖工程的方法
Android Studio导入第三方jar包或依赖工程的方法 一 导入jar包的方法 1.打开自己的工程,将需要导入的jar包copy到libs文件夹下 2.在导入的jar包处单击菜单 Add ...
- Android.mk添加第三方jar包
最近引入第三方的jar包进工程,发现光红色的两条并不起作用,加入include $(BUILD_MULTI_PREBUILT) 才起作用,而且顺序很重要,在这里把我参考的两个例子都列出来. 以下为引用 ...
- Android.mk添加第三方jar包(转载)
转自:www.cnblogs.com/hopetribe/archive/2012/04/23/2467060.html LOCAL_PATH:= $(call my-dir)include $(CL ...
- 在maven项目中解决第三方jar包依赖的问题
在maven项目中,对于那些在maven仓库中不存在的第三方jar,依赖解决通常有如下解决方法: 方法1:直接将jar包拷贝到项目指定目录下,然后在pom文件中指定依赖类型为system,如: < ...
- Android Studio引用第三方jar包(例如:使用LitePal)
如何使用LitePal的教程网上很多,不过对于新手,这些教程中遗漏了将第三方jar包拷贝到app->libs路径下后,还需要add as library. 下载LitePal 这时操作步骤如下: ...
- Eclipse项目中引用第三方jar包时将项目打包成jar文件的两种方式
转载自:http://www.cnblogs.com/lanxuezaipiao/p/3291641.html 方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 “MANIFES ...
随机推荐
- SpringMVC加载配置Properties文件的几种方式
最近开发的项目使用了SpringMVC的框架,用下来感觉SpringMVC的代码实现的非常优雅,功能也非常强大, 网上介绍Controller参数绑定.URL映射的文章都很多了,写这篇博客主要总结一下 ...
- 9.4 dubbo异步调用原理
9.1 客户端发起请求源码.9.2 服务端接收请求消息并发送响应消息源码.9.3 客户端接收响应信息(异步转同步的实现) 分析了dubbo同步调用的源码,现在来看一下dubbo异步调用. 一.使用方式 ...
- C# 远程服务器 安装、卸载 Windows 服务,读取远程注册表,关闭杀掉远程进程
这里安装windows服务我们用sc命令,这里需要远程服务器IP,服务名称.显示名称.描述以及执行文件,安装后需要验证服务是否安装成功,验证方法可以直接调用ServiceController来查询服务 ...
- Spark2.2(三十八):Spark Structured Streaming2.4之前版本使用agg和dropduplication消耗内存比较多的问题(Memory issue with spark structured streaming)调研
在spark中<Memory usage of state in Spark Structured Streaming>讲解Spark内存分配情况,以及提到了HDFSBackedState ...
- SpringCloud实战2-Ribbon客户端负载均衡
https://www.cnblogs.com/huangjuncong/p/9022055.html
- 树莓派中编译OpenCV3.4.1和OpenCvSharp
一.简介 本文重点描述在树莓派中编译OpenCV3.4.1和OpenCvSharp,大家都知道OpenCVSharp是使用C#调用OpenCV最简洁的一个库.但是在Linux上或者树莓派上运行时,需要 ...
- 4S店的潜规则内幕曝光
- [Big Data - Kafka] kafka学习笔记:知识点整理
一.为什么需要消息系统 1.解耦: 允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束. 2.冗余: 消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险. ...
- [Big Data - Kafka] Kafka设计解析(四):Kafka Consumer解析
High Level Consumer 很多时候,客户程序只是希望从Kafka读取数据,不太关心消息offset的处理.同时也希望提供一些语义,例如同一条消息只被某一个Consumer消费(单播)或被 ...
- 【Linux】深入理解Linux中内存管理
主题:Linux内存管理中的分段和分页技术 回顾一下历史,在早期的计算机中,程序是直接运行在物理内存上的.换句话说,就是程序在运行的过程中访问的都是物理地址. 如果这个系统只运行一个程序,那么只要这个 ...