对于只需要更换待机画面的朋友,请直接看附录。
一、环境配置:
BamBook电子书;
Android SDK;
Eclipse + ADT;(配置请自行参考网络文档)
Grep命令。(Linux下的命令,可下载windows版本)
二、 修改步骤:
1、 连接BamBook电子书:
用USB直接将
固件升级之前直接adb connect 192.168.250.2
固件升级之后,先杀掉如图一所示勾选的两个进程,再adb connect 192.168.250.2。
图一、杀掉BamBook进程
2、 查看BamBook中的Android系统:
在Eclipse的DDMS中浏览目录,主要关注/system/app/目录和/mnt/sdcard/sndaebook目录,如图二。
图二、浏览目录
其中/system/app/是Android应用程序目录,BamBook下存放有三个APK文件:
SagaPinyinIME.apk,SettingsProvider.apk,SndaBrowser.apk。而/mnt/sdcard/sndaebook是SndaBrowser.apk执行中生成的目录,里面的Java字节文件不可读,但是web文件(HTML、CSS、JS)和图片文件都可访问。而BamBook显示的界面由web页面提供。下载/mnt/sdcard/sndaebook目录,可供分析代码。
3、分析BamBook代码
在下载的目录搜索PNG,然后按大小排序,很快发现sndaebook\pages\IMG\ADDEFAULT.PNG为BamBook默认显示的待机图片,如图三。同时在\sndaebook\pages目录下可以看到很多HTML文件,从中查找出ADDEFAULT字符串,如图四。
图三、获取ADDEFAULT.PNG位置
图四、查找处理ADDEFAULT.PNG的代码位置
图五、代码查看。
使用diff命令,查看之前的版本和升级固件之后版本的差异,可以看到,WEB代码有很大改变,但是待机页面没有改变。
图六图七、比较页面修改
4、 修改代码
增加代码,如图八所示,是我准备了三张图片,隔天自动轮换显示。(当然,31日和1日的是一样的^_^).
图八、修改代码
然后上传图片和文件SCRSAVER.HTML,如图九所示:
图九、上传文件
然后按两下开机键,调出待机画面,你会发现,新的画面已经生效。
图十、待机界面
三、附录:
对于只需要更换待机画面的朋友,应该比较简单了。
先下载附件中的文件和图片,解压缩。然后杀BamBook驱动的进程(主要是为了干掉adb.exe,Bambook自己把adb服务给占了)。当然,你可以替换图片,但请保持文件名不变。
依次执行以下命令:
adb connect 192.168.250.2
adb push ADDEFAULT1.PNG /mnt/sdcard/sndaebook/pages/IMG/
adb push ADDEFAULT2.PNG /mnt/sdcard/sndaebook/pages/IMG/
adb push ADDEFAULT3.PNG /mnt/sdcard/sndaebook/pages/IMG/
adb push SCRSAVER.HTML /mnt/sdcard/sndaebook/pages/
其中adb在C:\Program Files\BamBook\Drivers\tools下面有,不需要什么特殊工具
修改后的代码和图片上传到http://www.oschina.net/action/code/download?code=16066&id=26476