evo 4G移植android2.3过程,出现的状态可看http://blog.csdn.net/mcu_hong/article/details/7085039
现在想写的是我是怎样实现触摸功能的。
本来在android源码上我是怎样搞都没有搞好的,调试的用了,logcat,,getevent等命令也是搞不好。因为他们都能够反映出触摸驱动很正常。方向也随之转去研究android2.3源码。可是搞了两天也搞不明白什么着,于是放弃。想的是,人家都做好代码了,用不着你改。
后来转而想看看cm7行不行了?对supersonic编译后,发现不对路。我手中的evo 4g是froyo,而且APK 是带odex那种形式的,和编译出来的不对版,而且蓝牙也没有。。就算把编译好的下载了也不能用。。
i很好的运气,记得以前有个muni版的rom,和内核。于是刷机,试试。最后居然发现muni可用。从中从新导出文件(执行 ./device/htc/supersonic/extract-files.sh)。编译,boot.img,recovery.img,userdate.img,system.img这次全有了。只下载system.img userdata.img试试,不行。。一直在开机画面上(已经很高兴了,本来快放弃的,现在成了)。问题来了,调试看看发生什么事,命令logcat一看,死循环在一个server 上,原来打不开。。想想,是init.rc出问题了,要改。后来不管了,把生成的boot.img+userdata.img+system.img一同下载。cm7成功完成启动。测试了几个功能,基本上没有问题。。
这里,突然想到前两天做好的android2.3的system.img,是不是因为使用了froyo的内核而不能使用触摸。。难道android2.2与2.3的触摸驱动不一样?
于是,又开始新的实验。。把muni版本的kernel+android2.3的ramdisk.img==boot.img,把这个boot.img+android2.3的system.img升级到手机,重启,等待一会后,开机成功,试触摸,OK了。几天的前的问题算是解决了。当然还有问题。。
启示:难道andriod的两个版本对触摸驱动要求不一样?不一样的地方在哪???????