我的故事: ifanr 幕后黑手的手持设备之旅
@tifan 负责维护 ifanr 的服务器及后台,他是 OSQDU——青岛大学非官方开源推广组织的共同创始人,谋智网络 Firefox 校园大使,开源软件贡献者。他的个人网站地址
最初玩手持设备是从父亲的 Nokia 8110 手机开始的,那是大约 1996 年的时候,我 5 岁,刚刚上一年级,也刚开始用电脑,放学以后喜欢瞎折腾电脑和那部手机,加上从雅虎以及东方网景聊天室里问来问去的,倒也了解到了不少 GSM 相关的知识。于是,自然而然的喜欢上了玩手持设备。
Nokia 8110 的菜单挺简单的,也没有中文输入法。有短信功能,但是移动没有开放。后来移动联通短信互通了我还激动了一阵子。当时的手机其实都差不多,一个屏幕,几个按钮,还不一定有时间显示功能。
后来,老爸觉得实在应该换手机了,就买了个 Nokia 3310,这个手机有游戏。当时还上小学,那时候感觉真的好神奇,手机还真是很好玩,但是觉得功能如果更多,可以自己写程序进去就更好了。第一次有了手机也在运行程序的概念,也第一次有了自己写手机程序的想法。
01 年,我到手了一台 iPaq 3630,古老的 Pocket PC。难以形容我拿到它的兴奋:这个东西居然可以自己写程序进去!插上数据线,Pocket IE 可以上网!迷人的科技,这么小的东西就可以跑这么多功能。还有音乐、视频播放。
接着,我迷上了 Linux,也开始明白了嵌入式是怎么回事。随着对电脑的越来越着迷,微软和康柏也没闲着,有了 Pocket PC 2002,我也托人安装上去了最新的中文版,还新加装了一块内存,到了 32M。PPC 时代,内存就是 SDRAM,不可以掉电,好奇怪的设计。这个小设备让我更了解了嵌入式设备,也让我更向往新技术。
高中时代,通讯工具是小灵通。后面有 JTAG 接口的那种,但是由于没有设备,没办法折腾。上了大学后买了台 Motorola E6,这也是我的第一部智能手机。
从这个时侯起,我才真正开始了对手机的开发。这个手机算是 Motorola 做的比较成功的一款 Linux 手机了吧,虽然还不是很开放,官方支持的只有 Java 开发,但是我还是费尽周折的找到了 C 语言的 SDK,用着不怎么样的 C 语言给自己写程序玩。从失败的内核升级(摩托罗拉不给我内核模块的源代码),到移植 MPlayer 以及 OpenSSH (前者因为我要听音乐,不喜欢 RealPlayer,后者则是因为需要远程管理服务器),得到了不少乐趣,也期待着有一款真正适合自己的手机。
Motorola E6 基本使用没问题,但是短信只能存大概 3k 条,这是因为 Berkeley Database 的大小只有 3.5MB,没办法更大,Java 运行速度也因为较小的 Heap Size 导致特别慢(而且摩托罗拉的 JVM 实现不理想),SDK 是靠网友 hack 出来的,高级应用仍比较欠缺。
因此,我开始尝试着移植 Qtopia 到 Motorola E6 上,这是第一次对嵌入式的尝试,从读 gen-blob 的源代码开始,到后来的借来服务器交叉编译 Qtopia,最后还狠心买了台好电脑,专门用来跑我的博客和编译 Qtopia 。Qtopia 中文支持很差,没有中文字体,也没有中文 UI。当时还没有文泉驿微米黑,也没有 Driod Sans 字体,只有一个文泉驿正黑体,还很大。一切从头重新开始,从精简字体到后来的裁剪系统,总算在百般 Hack 下得到了个支持中文的 Qtopia,但是中文输入一直没有什么进展,最终不了了之了——因为终于发现 Android 就要在眼前了。这是 09 年 2 月,我从新东方学 GRE 归来。
接着,就是准备 GRE 的紧张的日子。但是我仍在紧张的空隙中不断的尝试各种新的手持设备,各种手机,从山寨到 S60,唯独没有 Windows Mobile。而为了有个随时可以复习 GRE 单词以及查字典的东西,我购买了一台 Windows Mobile 的 PDA。当时买 Windows Mobile 完全是因为 mdict,这是陪伴着我成长的字典软件。Windows Mobile 对我的杀手应用大概也就是 mdict 和 cebook 了,其他软件的用户体验算是糟透了,蹩脚的联系人应用,累赘的 Outlook Mobile,笨拙 Office Mobile……这台 PDA 只有短命的 3 个月时间。俗话说,好奇害死猫,它的排线在一次拆机时被我扯断。
暑假买新手机时,我毫不犹豫的选择了 HTC Dream(G1)。其实早就觊觎这台手机了,到手后我又找到了原来儿时的感觉。我感叹它的手机分辨率,而且找到了我的最爱 Terminal Emulator! 我一直是 CLI 控。它还有 Webkit 内核的完整的浏览器,让我可以非常舒服地利用家里的 AP 上网。更棒的还有 GMail 的推送服务,而 Market 也让我对里面的软件欣喜不已。那时候 Android 1.5 发布没多久,Google 拼音也刚刚发布,我当时预言,Android 的好时代就要到来了。
不错,Android 的好时代到了。
我欣赏 Apple 的设计,但是作为一个开源软件的贡献者,我很不喜欢 Apple 这种将对家排挤到门外,肆意封杀与已不适的技术的行为,甚至有些人可能一提到 App Store 就首先想到了封杀应用。我认为,用户是有选择的权利的,而 Apple、Microsoft 将用户选择的权利活生生的剥夺了。比如在微软平台上部署企业应用,你就不得不选择 Active Directory + Exchange Server + Outlook + SQL Server + IIS + ISA——你选择这个平台就被套牢了。
而 Android 呢?不喜欢默认浏览器,至少你还有 Opera Mini、UCWEB。Android 没有蓝牙文件传输?Market 里至少有 5 个蓝牙传输程序。不喜欢默认的短信程序?Handcent SMS 也非常流行。甚至 Launcher,OpenHome 等等 Launcher Alternate 总有一款你会喜欢的。实在找不到?OK,SDK 和 NDK 都是开放的,至少你可以写一款。而对于 Apple 呢?你可能需要越狱。尽管某些 Android 手机也需要破解获得 root 权限,但这已与 Android 无关了。
总的来说,玩过的手持设备并不是很多。Android 现在感觉是最适合我的,而 Symbian,似乎已经被时代抛弃了。Windows Mobile 一直是个丑角。MediaTek 的嵌入式操作系统(似乎是某个 RTOS)虽然很流行,但是 Java 实在太烂,虽然有一定的 ELF 执行能力,但是一直没有找到 SDK。
现在,我的手持设备只有一台 HTC Dream 和 iPaq 3630 了。后者已经被我安装上了 Familiar Linux,没事的时候,会充上电,让它放一首那年夏天,回忆回忆以前的日子。
这是@tifan 和数码设备的故事,相信你一定也有自己的有趣故事,欢迎向我们投稿~ 投稿请寄 [email protected]。