关于Android开发中导出jar包后的资源使用问题解决

我们经常遇到一个需求,就是给别人使用我们工程的时候,为了能够屏蔽代码,把代码封装成jar包提供给第三方使用,但是这样我们的资源文件怎么给对方用呢?

其实并不用这么的复杂,下面就介绍一下具体的方法

一, 把你要封装jar包的工程先设置为库文件(Is Library)

右键项目名称——properties——勾选下图的checkbox即可。

二、最关键的一步,Clean一次项目!!!

Eclipse点击上面工具栏的Project——Clean——选择项目,确定

三、使用Eclipse的Export功能,将项目src目录下的源码(注仅仅是src目录下的源码,如果需要还可以加上assets目录,其它资源我们将以库项目的形式提供给用户)导出Jar包,并把该jar包放到原工程的libs目录下,刷新。

这里我补充解释一下,此时导出的Jar,里面的Object = findViewById(R.id.id_name)的R.id.id_name等部分,是不会变的,如果你没做第一步和第二步直接导出,那么R.id.id_name部分会变成R文件里的id值,如:Object = findViewById(2114243567).

四、删除该项目src下的源代码

五、将srcjar.jar包加入客户的项目中(我们以jardemo项目简单模拟),并引入我们的plugin资源库项目(注客户项目一定要和资源项目在同一个目录下)。

六.将plugin资源库项目的AndroidManifest.xml中的内容,添加到客户项目中,大功告成!

注意:如果在你的项目中存在调用本项目目录调用资源,如assets下的apk或者mp3等文件,可以拷贝到客户端相应的目录即可。

如果此方法不管用,请参照另一篇文章

http://www.codes51.com/article/detail_104939.html

时间: 2024-12-28 16:18:17

关于Android开发中导出jar包后的资源使用问题解决的相关文章

Android导出jar包后的资源使用问题

Android导出jar包后的资源使用问题 - mengweiqi33的专栏 - 博客频道 - CSDN.NET 我们经常遇到一个需求,就是给别人使用我们工程的时候,为了能够屏蔽代码,把代码封装成jar包提供给第三方使用,但是这样我们的资源文件怎么给对方用呢? 网上有很多方法,有用ClassLoader的,有写死id的,如我的另一篇文章 [html] view plaincopyprint? http://blog.csdn.net/mengweiqi33/article/details/199

Android开发中出现jar包重复

安卓开发中出现jar包重复,控制台会出现如下报错: 解决方案是: 可以查看自己项目工程下有没有重复,例如: 如果有重复,删除就可以了!

Android APK及导出JAR包的代码混淆

像Android开发基于java语言的,很容易被别人反编译出来,一下就相当于裸奔了,特别是用于商业用途的时候,防止反编译是必要的措施.而代码混淆是一种很好防止反编译的方式. 1.APK的代码混淆. 在eclipse的开发环境下,使用android SDK 自带的proguard混淆工具. 主要用到红线框中的两个文件. 在project.properties文件中,要指定混淆的文件.如图: 然后,详细的proguard-project.txt的写法如下: -dontwarn 是让指定包名不提示警告

在Android Studio中导入jar包

#1 下载jar包文件, #2 拷贝到libs目录下 #3 打开你的build.gradle,在dependencies加入如下代码 dependencies {compile files('libs/android-support-v4.jar')compile files('libs/android-async-http-1.4.3.jar')//或者你想偷懒可以只写下面这一句,所有libs文件下的jar都会被编译compile fileTree(dir: “libs”, include: 

[Android Pro] AndroidStudio导出jar包

reference :  http://blog.csdn.net/beijingshi1/article/details/38681281 不像在Eclipse,可以直接导出jar包.AndroidStudio只可以生成aar包. 在网上看到许多朋友问怎么可以像Eclipse一样导出jar包,其实我们只要知道它的原理就可以了. 用jar命令就可以打包你所需要的资源,并指定jar包名. 在网上下载Volley源代码,导出jar包为例子. 在Volley项目工程中,我修改了下他的gradle版本,

兔子--Android Studio中引入jar包

1.将jar包放入项目里的libs文件夹中. 2.在project选中jar包点击右键"Add as library". 3.项目的build.gradle文件里的dependencies节加入 会自动生成如下代码: { compile files('libs/android-support-v4.jar') compile files('libs/xxxx.jar') } 如果不能自动生成,就手动添加进去.

spring开发中commons-logging.jar包的功能

删除后程序会报错 Java.lang.NoClassDefFoundError 记录日志,通常和  log4j.jar共同使用 原因: 在 sun 开发 logger 前,apache 项目已经开发了功能强大的 log4j 日志工具,并向 sun 推荐将其纳入到 jdk 的一部分,可是 sun 拒绝了 apache 的提议,sun 后来自己开发了一套记录日志的工具.可是现在的开源项目都使用的是 log4j,log4j 已经成了事实上的标准,但由于又有一部分开发者在使用 sun logger,因此

(01)Eclipse中导出jar包

1.选中需要导出的类 2.右键点击export 3.选择Java下的JAR file,点击next 4.默认选择Export generated class files and resources 和 Compress the contents of the JAR file.在JAR file处输入名字,点击finish 5.导出的文件保存位置:工程目录下 原文地址:https://www.cnblogs.com/javasl/p/12273170.html

Android开发中如何获得正确的layout资源(layout-sw480dp layout-sw600dp-land layout-sw720dp-port)

Android应用里里,大家一定饱受各种layout-sw480dp layout-sw600dp-land layout-sw720dp-port之苦,往往不知道自己的平板加载的是哪个Layout而不得不一个个尝试,网上一大堆说不清的教程.本人查阅很多资料,给大家分享一种计算方法确定自己平板所加载哪个dp的资源. 事实上,sw不是software的,意思,我猜是shortest width,最短的宽度. sw-xxxx-dp的计算公式是  sw *160/dpi 比如 1280*800, sw