HTC Tattoo 两三事
在观望了很久智器的 V5 后,本人一周前用省吃俭用的钱入手了 HTC Tattoo。折腾了这么一周,在这里随便聊聊这个基于 Linux 核心的设备。提醒:软文,慎入!
HTC Tattoo 是 HTC 公司推出的入门型 Android 系统手机,目前固件版本 1.6,基于 Linux 2.6.29 核心。详细硬件配置
开机速度
在入手前,在视频中就发现这个机器开机速度不是一般的慢。自己的两年前购买的 Turion 64 X2 本本,运行 Fedora 12 i686 , 加载 VBox 和 Nvidia 官方驱动,bootchart 的时间为 32 秒;而 Tattoo 的时间在50秒左右,可能跟需要加载 HTC 定制的 HTC Sense 有关。幸好开机过程中出现 Android 的小绿人还是比较 Cute 的(女友说它是绿虫子……)。
声音、视频与多媒体
开机过程中声音是无法关闭,有些恼人……
声音部分应该是用的 ALSA,不知道有没有像 Palm WebOS 一样使用 PulseAudio 这样的事件驱动的音频服务器,不过至少它可以针对不同的音频源(来电、消息、邮件、提醒、媒体)单独调节音量。
视频部分大家都知道 Android 没有使用 X Window 架构,不再赘述。3D 方面支持 OpenGL ES,不过 Tattoo 运行经典的 Qualcomm NeoCore 测试程序有严重的贴图错误,可能是兼容性问题。
Android 系统的多媒体框架是由 PacketVideo 提供的 openCORE。从目前的状况来看距离 gstreamer 和 xine 这两个多媒体框架差距不小,分离器和解码器都少的可怜。
我可以很负责的说,开源音频格式 ogg 是可以播放的,尽管在 HTC 的详细参数里根本没有提到。硬盘上 6G 的 ogg 音乐可以挨个听了~ FLAC 没有试,不过没有看到库文件,应该不行。
单纯的播放器来言,目前作为绝大多数开源播放器解码器部分的 ffmpeg 的 Android 实现才起步不久,常见的 AVI (Xvid+MP3),mkv(x264+AC3) 和 RMVB 完全没戏。
目前在 openCORE 框架下能播放的视频局限在 MP4 (H264+AAC),用一个叫 Meridian Player Noble 可以获得字幕支持。理论上讲 Avidemux 应该可以很好的转码,但是 Fedora 12 rpmfusion 里的 Avidemux 并没有包含 FAAC 编码器,在加上 x264 的编码速度,我就不折磨本本了……
另外 HTC 说自己支持 WMV9,当然我是绝对不会去试的……
蓝牙
Tattoo 所用的 Android 1.6 系统的蓝牙是个残废,不支持文件传输,也不支持声音服务器……
GNOME 2.28 里对蓝牙管理器的改进在 Tattoo 上完全体现不出来…… 用 GNOME 的蓝牙管理器没有办法给 Tattoo 传送文件。
幸好 Android 2.0 有改善,静候固件……
办公软件
Android 比较诡异的是没有开源的 txt 文本编辑器,免费的也没有…… 很怀念 Palm Zire72 上的 cardTXT ……
DocumentsToGo 支持 M$ 系列文档查看编辑和 PDF 查看,12月6日前购买仅需 $10。
OpenOffice.org 在可见的未来是不会有 Android 版本的(但不是完全无望)。目前 Android 仅有一款支持 ODS 数据表格式(还不是更常用的 ODT 文档)的软件 Androffice。
辞典方面,有一款名为 ColorDict 的软件,支持星际译王的辞典,支持 QuickSearch 整合,相当优秀,很不错~就是不能真人发音……
文件系统
由于 Tattoo 暂时还没有第三方固件,无法获得 root 用户权限,查询不了更多的信息。不过根文件系统用的 ext 系列的(ext3 应该)没什么问题,因为有 tune2fs 工具。
郁闷的是存储卡上放置一般数据的分区只能是 vfat,我将 microSD 卡在本本上格式化成 ext3 放入后直接提示错误。看来是 fstab 部分限定了首个分区类型…… 我要 ext4 !!!我要和 M$ 不兼容!!!
软件市场
Android Market 按地区划分这点我之前完全不知情,以为现在把软件还按地区划分只有 Nintendo 能做的出…… 更加郁闷的是由于 Tattoo 的分辨率比其他 Android 小(320*240),所以 Market 会把指定屏幕最小分辨率的程序都过滤掉了…… 其实大多数程序也是可以运行的(下面没有了……),不过就要通过其他途径去获得了,颇费周折……
另外不象 AppsStore,Android Market 只能通过手机访问,无法通过网络下载。意味着如果不适用第三方软件,固件升级后的软件重装将是流量噩梦……
GPL 协议
Google 在这方面还是做到了。在系统的设置菜单里很容易就能找到 Android 系统所用的开源组件的相关协议,包括 Linux Kernel、SQLite、Vorbis、Gzip、bz2、iptables、wpa_supplicant、dhcpd、pppd、png、FreeType、WebKit 等。不知道 Palm 新的 WebOS 在这方面做的如何。
HTC 自己的部分组件也以 APL 2.0 协议开源了,比如相册、相机和媒体播放器。
开发环境
本站介绍过如何安装和配置 Android SDK,经过测试对于最新的 Eclipse 和 Android SDK 2.0 依然适用。
不过要注意的是,新的 udev 对于 Android 的设备权限处理有问题,如果像上文中将 Android SDK 安装在用户目录下,必须用 su 获得 root 权限(su - 不行的,原因自己想啦~)才可以使用 adb 。
目前看到两个 Android 平台下的开源项目,觉得还不错,一个是飞信客户端 AnFetion,一个是提供很多基础应用(比如文件管理器)的 OpenIntents 。
Java 和 Dalvik (口水警告)
Android 目前主要开发语言是 Java,所有程序都运行在与 JavaME 不兼容的 Dalvik 虚拟机上。逛了几个论坛,不少人对此有异议,认为让 Dalvik 垃圾收集器管理内存会影响性能和耗电,于是论坛上很火的帖子是XX版的任务管理器,认为手动结束进程就能释放内存,提高性能并省电。
在此不想多说什么,只是自己印象中的 Linux 内核内存管理(阅读陈莉君老师的书,2.4 内核),并不是进程终结了就立即将进程对应内存页交换出去的。于是乎上面那种手动结束进程的方式似乎并不能起到“提高性能并省电”的效果。
并不确定现在 2.6.29 内核是什么样子, Android 所用的内核是不是又在内存管理方面有变化,以上只是推测。不过个人装了不少程序,很少手动结束进程(通过某国产的文件管理器),互相切换并没有感觉到什么延迟。
结束语
作为开源狂热者,我对这台 HTC Tattoo 还是基本满意的,希望以后 Android 在办公软件和文件系统上能做的更好,至少让 microSD 用户分区支持 ext4 !!!
目前热切期待 Firefox for Android 中……
Read More: