一 网络成功移植案例
1 Android在OMAP上移植(国外)
手机原系统:Linux kernel 2.6.23
CPU处理器:OMAP5912
移植完成部分: ⑴ 内核kernel
⑵ 内存RAM
⑶ 时钟:Timer
⑷ 电源Power
⑸ 按键:Keys
⑹ 输入输出:GPIO
⑺ 文件系统:File system(JFFS2)
存在问题: ⑴ 有些按钮工作,有些不工作
⑵ 内存受限制,机器自身内存小,有些不满足android系统要求
⑶ 有些系统应用不识别,需要手动安装()
File not found: /system/app/AlarmClock.apk
File not found: /system/app/AlarmProvider.apk
File not found: /system/app/Anagrams.apk
...
File not found: /system/app/Vending.apk
File not found: /system/app/VoiceDialer.apk
File not found: /system/app/Voicemail.apk
File not found: /system/app/YouTube.apk
2 Android在摩托罗拉A1200 Ming上移植(国内未完)
手机原系统:Linux 2.4.20 kernel
CPU处理器:Intel XScal-PXA270
移植完成部分: ⑴ Android能正常加载.(android字符显示,红眼循环运行,Android桌面显示)
⑵ 触摸屏可以在A1200/E680上工作
⑶ 硬件(VR,摄像头,选择键)能够在部分A1200运行
⑷ 个别主要程序请求(拨号器.地图,浏览器,联系人)可以从用户界面启动加载
存在问题: ⑴ 声音不工作
⑵ 显示屏颜色在A1200/A910使用18插针后在屏幕的面板上产生不错,但是android的变量文件系统使用16位色
⑶ 虽然触摸屏能用,但是还得校准
⑷ 其他的硬件还是不工作
⑸ 目前GSM电话不正常工作
⑹ Android audio在A1200不能运行
⑺ 按键功能在A1200上不能正常使用
⑻ A1200触摸屏颜色显示问题
3 Android在HTC TyTN II 上移植(不是真正的移植)
手机原系统:WindowsMobile 6.0 Professional
CPU处理器:Qualcomm MSM7200
运行截图
运行原理分析:
这种方法的原理是,在Windows mobile中运行一个工具HaRET.exe,加载linux镜像文件。进入Linux后,只要重启就会进入Windows,再次运行HaRET.exe又可进入Linux。
具体步骤如下:
⑴ 运行Windows mobile
⑵ 确定手机已经刷成SuperCID,解锁
⑶ 安装 wm5storage,利用wm5storage将Mini-SD重新分区成FAT
⑷ 下载、安装zImage,default.txt,HaRET.exe拷贝到那个格式为FAT的分区
⑸ 运行HaRET.exe,按确定就进入Linux了
HaRET支持的设备列表
Device | CPU | Status | Notes |
Acer n50 | pxa272 | Ok |
|
h1940 | s3c2410 | Ok | Works well with 0.5.x, and older 0.3.6 if mtype and ramaddr specified manually. Problems were detected with 0.4.5. |
h2200 |
| Ok |
|
h3900 |
| Ok | Tested with WM2003 |
h4000 |
| Ok |
|
h63xx | omap1510 | Ok | Tested with image from the HpIpaqH6315 port |
hx2000 |
| Partial | There were reports of random problems. WM2005 known to cause problems.
|
hx4700 | pxa27x | Ok | WM2003: Boots OK. (Version 4.21.1088 Build 15045.2.6.0 - 2 report) |
rx3000 | s3c2440 | Ok |
|
HTC Alpine | pxa27x | Ok |
|
HTC Athena | pxa27x | Ok |
|
HTC Apache | pxa27x | Ok |
|
HTC Beetles | pxa27x | Ok |
|
HTC Blueangel | pxa263 | Ok | some pxa27x-specific features are not available. |
HTC Magician | pxa27x | Ok |
|
HTC Universal | pxa27x | Ok |
|
Dell Axim X50/X51 | pxa27x | Ok |
|
msm7500 | Ok | processor type now detected in Kevin's build from 08/01/07 |
二 移植被选方案
1 在linux系统手机上直接移植Android。
2 在Windows mobile系统手机上利用HeRET.exe加载android系统。
(注:此方法不是真正移植,且HeRET目前似乎不支持Willcom手机)
三 移植环境及内容
选择方案一:
1 软件环境
⑴ Linux Host:Ubuntu8.1
⑵ tool-chain :交叉编译Linux kernel
arm-2007q3-51-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.tar
⑶ Patch tool: OpenEzx 2.6.24.x-补丁设置工具去升级A1200的kernel。
⑷ USB Boot:OpenEzx开发的一个工具,使得你可以使用USB去启动kernel
⑸ Busybox 1.1.3:使用了busybox去建立Android NFS Root文件系统。
2移植工作内容:
⑴ 搭建交叉编译环境Tool-chain
⑵ 导入android_nfs_root引导文件镜像
⑶ 使用USB加载原Linux内核
⑷ 在PC机上用命令行远程登录手机
⑸ 修改Android开源内核,如下内容
① 内核:kernel
② 内存:Flash
③ 时钟:Timer
④ 电源:Power
⑤ 按键:Keys
⑥ 输入输出:GPIO
⑦ 文件系统:File system(JFFS2)
⑧ 触摸屏:Touch Screen
⑨ 声音:sound
⑹ 编译、下载到手机运行
(注:内核编译时间较长,一次编译需要1小时;且不能debug,工作效率较低)