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

时间:2024-07-21 15:33:14

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

网上有非常多方法,实用ClassLoader的,有写死id的,如我的还有一篇文章

http://blog.****.net/mengweiqi33/article/details/19902799

事实上并不用这么的复杂,以下就介绍一下详细的方法

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

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

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

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

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

三、使用Eclipse的Export功能,将项目src文件夹下的源代码(注不过src文件夹下的源代码,假设须要还能够加上assets文件夹,其他资源我们将以库项目的形式提供给用户)导出Jar包,并把该jar包放到原project的libs文件夹下,刷新。

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

这里我补充解释一下,此时导出的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资源库项目(注客户项目一定要和资源项目在同一个文件夹下)。 

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



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

注意:假设在你的项目中存在调用本项目文件夹调用资源,如assets下的apk或者mp3等文件,能够复制到client对应的文件夹就可以。

假设此方法无论用,请參照还有一篇博文

http://blog.****.net/mengweiqi33/article/details/19902799