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

Android导出jar包后的资源使用问题 - mengweiqi33的专栏 - 博客频道 - CSDN.NET

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

网上有很多方法,有用ClassLoader的,有写死id的,如我的另一篇文章

  1. http://blog.csdn.net/mengweiqi33/article/details/19902799  
http://blog.csdn.net/mengweiqi33/article/details/19902799

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

 

一, 把你要封装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等文件,可以拷贝到客户端相应的目录即可。 



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

  1. http://blog.csdn.net/mengweiqi33/article/details/19902799  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。