`
yanghaoli
  • 浏览: 288470 次
社区版块
存档分类
最新评论

Android将第三方jar打包进apk

 
阅读更多

转自:http://blog.csdn.net/liushaogeng/article/details/6641704

使用第三方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.

具体可参照:http://blog.csdn.net/guanmjie/article/details/4437779

方法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://www.eoeandroid.com/thread-34527-1-1.html

1
1
分享到:
评论

相关推荐

    android安卓app编译原理,build生成APK的过程解析.如何将第三方so文件打包进apk中

    android 安卓app编译生成APK的过程解析.如何将第三方so文件打包进apk中 1.生成R.java文件 2.编译aidl文件,包括java静态库 3.编译java源文件 4.将jar包装换为dex文件 ...

    Android将Activity打成jar包供第三方调用

    本知识点主要探讨如何将Android的Activity打包成jar包,并介绍如何在第三方项目中调用这个jar包内的Activity。 首先,让我们了解jar包在Android开发中的角色。Java Archive(jar)是一种文件格式,用于聚合大量的...

    Android Studio打包生成APK教程.rar

    - 依赖项管理:检查并移除不必要的第三方库。 - 使用动态分发:对于大体积的资源,可以考虑通过Google Play服务动态分发。 - 采用Android App Bundle,它会根据用户的设备特性生成优化的APK。 6. **测试Release ...

    uniapp打包成apk ---完整解压资源sdk

    4. **SDK集成**:uniapp支持第三方SDK的集成,例如广告、支付、推送等服务。开发者需要将这些SDK的aar或jar文件引入项目,并在AndroidManifest.xml中配置相应的权限和服务。 5. **打包与签名**:使用HBuilderX的...

    打包Androidapk

    为了确保应用的安全性和防止篡改,发布到Google Play或其他第三方市场前,APK必须被开发者私钥签名。签名验证可以确保APK的来源和完整性,同时允许后续版本的更新。签名过程通常使用keytool工具生成密钥库,然后使用...

    获取apk包名的ant等jar包

    总结一下,`ant-1.7.0.jar`和`apktool.jar`分别代表了Ant和Apktool这两个工具,它们在Android开发中用于构建、打包、反编译和解析APK。获取APK包名可以借助Ant的XPath表达式或者Apktool的解码功能,这些都是Android...

    android工程正确导入jar包

    本文将详细介绍如何正确地将jar包导入Android项目中,并确保它们能被正确打包进最终的apk文件。 #### 导入jar包的基本步骤 1. **下载jar包**:首先需要从可靠的源下载所需的jar包,如Maven仓库、GitHub等。 2. **...

    jar和jad转换apk

    .apk文件是Android应用程序的发布格式,可以通过Google Play商店或其他第三方市场进行分发。 ### 为什么需要将jar和jad转换为apk? Java应用程序最初设计用于桌面环境或Java ME平台,而.apk文件则是专门为Android...

    android重打包工具 apktool.zip

    `apktool`是一个强大的Android应用(APK)反编译和重打包工具,由IzzySoft开发,它允许开发者查看、编辑并重新打包APK文件,以满足特定的需求。 ### APKtool的功能与工作原理 1. **反编译**:`apktool`可以将APK中...

    Android加密解析之第三方安全平台

    总的来说,Android加密解析第三方安全平台为开发者提供了全面的安全保障,包括代码混淆、APK签名和多渠道打包等关键环节。通过这些服务,开发者可以有效地保护自己的应用免受恶意攻击,同时获取必要的统计信息以优化...

    Android Studio 在项目中引用第三方jar包的方法

    下面将详细讲解在Android Studio中引用第三方jar包的步骤。 1. **将jar包放入项目结构** 首先,你需要将下载的第三方jar包文件复制到你的Android Studio项目的`app`模块的`libs`目录下。如果没有`libs`目录,可以...

    android 引用第三方库的方法

    本文将详细介绍如何在Android项目中引用第三方库,以及常见的方法和注意事项。 首先,我们需要了解Android Studio是目前主流的Android集成开发环境,它支持Gradle构建系统,这使得添加第三方库变得非常便捷。以下是...

    android安卓app教程之反编译App,修改资源文件后,重新打包生成新的APK.zip

    这里提到了`apktool`,它是Android应用反编译和编译的重要工具,可以从官方仓库或者第三方网站下载。`apktool`能够解包APK,展示其内部结构,包括XML文件、图片资源、布局文件等。 2. **反编译APK**: 使用`...

    dex2jar反编译apk(工具及流程)

    要注意的是,反编译可能存在版权问题,只有在合法授权的情况下才能对第三方APK进行这种操作。此外,反编译结果可能包含混淆后的代码,这会增加理解和分析的难度。 总结起来,dex2jar和JD-GUI是Android逆向工程中...

    反编译工具+apk签名+jar包查看器

    签名过程涉及使用私钥对APK进行数字签名,这个过程可以通过各种工具完成,比如Android Studio内置的签名工具或者第三方工具。虽然压缩包中没有直接包含apk签名工具,但通常这些工具会帮助生成或管理签名密钥,以及...

    apk文件中添加jar文件

    这个文件可能来自于第三方库或者你自己编译的Java项目。 2. **反编译APK**:使用apktool工具进行反编译。apktool是一个强大的工具,它可以将APK文件解压为源代码目录结构,便于查看和修改。在命令行中运行以下命令...

    apk解包打包工具

    你可以从官方网站或可靠的第三方网站获取这些工具。例如,Apktool用于解析APK的资源文件,JD-GUI则用于查看反编译后的Java源代码。 2. **运行Apktool解包**:将APK文件拖入Apktool的命令行界面,执行`apktool d ...

    Java解析apk所需jar包

    这通常需要第三方工具,如dex2jar和JD-GUI。dex2jar将DEX转换为可读的JAR,而JD-GUI则显示JAR中的源代码。这些工具可以帮助开发者理解已有的APK行为,或者在不拥有源代码的情况下修改APK。 7. 安全与隐私问题: ...

    android反编译工具 apktool-2.9.3.jar

    使用Apktool进行第三方应用的反编译和修改时,必须确保拥有合法的授权,避免侵犯他人的知识产权。 总结来说,Apktool 2.9.3作为一款强大的Android反编译工具,它为开发者提供了深入洞察APK内部结构和资源的能力,...

Global site tag (gtag.js) - Google Analytics