FBReader是一款开源电子书阅读器,支持很多文件格式,如ePub, rtf, fb2, html, txt and (partially) mobipocket/kindle等。
本文就来交一下大家如何编译FBReader的安卓源代码,并修改它的package名,之前在博主的另外一个博客(不再更新)上有写过http://blog.csdn.net/zyl_android_apk/article/details/8910498,但是经过之后的实践,不是很理想,下面给出一个新的修改方法。
1、首先下载FBReaderJ的源代码
下载地址是:https://github.com/geometer/FBReaderJ(github如何使用就不介绍了,不会的自行搜索),下载到zip格式的压缩包。
2、已经配置好的android开发环境,包括sdk和ndk,博主用的都是安卓开发官网上给的。
sdk:带有adt 的eclipse,下载地址http://developer.android.com/sdk/index.html
ndk:下载地址http://developer.android.com/tools/sdk/ndk/index.html
cygwin:下载地址http://cygwin.com/install.html
至于如何安装就不详述了,自行谷歌百度。
3、解压下载到的源码包,并将其导入到eclipse中。
导入结果如下图所示:
看到上边的红色叉叉,我们需要修复一下,首先是library
右键单击library,倒数第二个属性,按下图设置
接着是FBReaderJ,同样是右键,属性,按下图设置好
不出意外的话就能消除掉程序的错误。
4、接着需要进行ndk编译,虽然程序看上去没有错误,但是libs文件夹中缺少*.so文件
打开cygwin,进入FBReaderJ文件夹中,运行命令/cygdrive/d/android/android-ndk/ndk-build,就开始进行编译了。如下图所示,等待程序执行完成(比较耗时)。
结果如下图所示
这个时候运行程序就可以正常使用啦
5、修改package
我们研究FBReader主要是希望改造它并为自己所用,所以修改package是很重要的。
5.1 修改AndroidManifest.xml文件
将package="org.geometerplus.zlibrary.ui.android"修改为package="com.aaa.helloworld"并保存
5.2 这时src文件夹中的一些类报错,打开这些保存的文件,将其中报错的import org.geometerplus.zlibrary.ui.android.R;修改为importcom.aaa.helloworld.R;即可。
然后就达到我们的目的啦
github中fbreader原始工程下载地址:http://download.csdn.net/detail/u012314976/6926311
我编译并修改package后的工程下载地址:http://download.csdn.net/detail/u012314976/6926663
个人原创,转载请注明出处:http://blog.csdn.net/zhyoulun/article/details/19283805