Android对于便携电子消费品来说是最易用的开源系统,没有之一。很多智能硬件使用着定制化的Android系统,如手机——小米、锤子,如手表——Ticwatch。然而,把Android大刀阔斧的改造成你想要的系统,并讲改造的好的新系统搭载在手机以外的智能产品上并不是一件容易的事情。
改造者需要考虑:如何让它占用内存更孝更省电、易操作等等。
了解Android系统
Android系统架构
仍然有必要简单说明Android系统架构。如果把Android系统看做一层一层的,那么基本可以理解成以下结构(这是其中一种简单的分层方式):
1、最上层是应用层(Application层),包含应用,比如桌面(恩,桌面也是应用)、电话、设置等;
2、第二层是应用框架层(Framework层),包含了对上层应用的管理和提供开发者所需的应用程序编程接口(API)。
3、第三层是系统运行库层(Android Runtime 层,有人将二、三层统一到了一起),提供各种各样的库(如C/C++)使上一层“看起来”更简单;
4、最底层是Linux内核层(包括硬件驱动),将硬件资源抽象成系统资源并管理这些资源(内存管理、进程管理等)及其安全。
有了上面这些“层”,系统就可以直面“电路板”了。
开始改造你的Android系统
在这里,出门问问以改造Android为例,主要提出主要的三个方面的改造:系统的裁剪及优化、界面的重新定制、人机交互方式的重新设计。
先说说Ticwear的诞生背景。Ticwear是第一套在国内可以正常使用的、可在系统层结合本地服务的、可以开发第三方应用的智能手表系统。出门问问之所以开发这样一款系统,一方面是因为智能手表系统Android Wear不开源,另一方面是因为对于出门问问来说,类似于苹果那样,从技术到系统再到硬件全部有自己掌控,可以给用户更优秀的体验。
类似于小米MIUI,Ticwear也是定制化Android OS。不过与MIUI搭载在手机上不同,Ticwear搭载在手表上,这使得改造的重点被聚焦在系统体积、功耗、和手机稳定的连接以及多种交互方式上。
系统的裁剪与优化
手表电池小,提升续航力是王道。怎么做?毫不犹豫的、大刀阔斧的裁剪。最简单有效的裁剪方法就是裁掉FrameWork层没用的模块。比如智能手表与手机相连,通信及GPS功能可以借助手机实现,裁掉他们。
除了裁剪,还有整个系统的优化。但是如何优化,要具体分析。以智能手表为例,蓝牙通讯非常重要,必须优化。
蓝牙通讯优化的一个方向是让手表的蓝牙连接更稳定、快速。因为智能手表的大多数服务,如网络、GPS,都需要手机的支撑,因此,这种稳定、快速的要求比Android系统本身的标准还要高。那么如何改造?加入更多算法,如蓝牙功率参数的调整、断连后快速恢复的解决。这时的优化要注意,连接是否稳定,需要系统与硬件完美配合,
蓝牙通讯优化的两一个方向是让开发者更好地开发应用(毕竟是智能手表,内容丰富很重要)。Ticwatch搭载的系统是出门问问自主研发的Ticwear,为了让Android Wear手表系统的开发者能无缝地切换到Ticwear系统,方便地开发Ticwear应用,出门问问开发了一套兼容Android Wear的蓝牙通讯协议。
这是一套和Google GMS兼容的蓝牙通信协议Mobvoi Mobile Service(MMS)。MMS基于蓝牙RFCOMM协议,提供了传送小数据的MessageAPI,传送大数据的DataAPI,以及传送设备信息的NodeAPI。开发这套协议的主要难点在于适配不同蓝牙设备,保证数据传输的可靠性、安全性,以及满足低功耗的要求。
重新思考人机交互方式
Android的触控交互主要是为智能手机、平板等大屏设备设计。手表屏幕太小,一只手指就能占据整个表盘。显然,手表并不那么适合触控交互,要设计更易用的交互方式。
什么交互方式最适合你的设备?你需要明确改造后的Android系统搭载的硬件有什么特点。智能手表的特点是屏幕很小,戴在手腕上随时随地抬手即见。因此,出门问问为整个手表提供了四种主要的交互。
Ticwear语音服务
第一是智能语音交互。因为抬手可用,语音便成为了手表的首要交互方式。用户只要抬手对手表说“你好问问”,即可轻松唤起语音交互界面。想问什么,想做什么,手表听你的。
第二是挠挠交互。因为屏幕太小,设计不遮挡屏幕的交互方式便很有必要。Ticwatch机身右侧设计了触摸条。用户可通过滑动、点击,实现如放大、缩孝菜单选择等多样化操作。
第三是手势交互。手表戴在手腕上,手势交互可谓最自然的交互方式。除了抬手亮屏,Ticwatch还加入了“摇摇”换名片——摇晃一下手腕儿,就可以和朋友交换名片,或是更换表盘。
第四点是触控交互。虽然触控不再是最好的交互方式,但毕竟技术成熟,用户习惯。
除了这四点,出门问问还保留了手表表冠作为开机键。
实际上,这是整个系统改造的关键环节——它占据了用户体验的核心部分:交互。这不但关键还很难,因为你很可能需要创造一种交互方式,然后设计合理的硬件、设计硬件驱动并设计开发者可以调用的函数——这一整套下来,艰难可想而知。
全新的界面定制
Cubic UI(多维度UI)
由于你打造的系统很可能不给手机使用,那么不仅仅是交互要改变,更要改变的是整个UI。这一点很重要,毕竟用户直接面对UI。
你需要对界面进行重新定制:不需要的直接删掉,不适合的重做。手表不同于手机,因此,就算是界面也要设计适合手表的界面。为此出门问问打造了一套更好实现“语音”交互与触控交互的界面——Cubic UI(多维度界面)。为了实现Cubic UI,深度定制很有必要。
首先是表盘系统,也就是“主页”。设计表盘系统时,出门问问考虑了以下几点需求:一是定制化,开发者可以简单地设计开发出一款表盘;二是性能,表盘的绘制必须节能高效;三是兼容性,开发者可以轻松地把为Android Wear定制的表盘移植到Ticwear上。因此,对于Ticwear来说,系统之外设计配套的系统服务接口就很有必要。
其次是信息查看方式。手表太小,推送的信息不易查看,因此,出门问问将一条条通知设计成卡片的形式,多个同类卡片又可以合并成一张,避免通知过多。用户就可以直接对应用进行操控,无需再进入应用。
完成系统的裁剪及优化、界面的重新定制、人机交互方式的重新设计,系统改造工程便差不多了。但可能还不够。毕竟,系统是搭建在硬件上的,对系统的改造应该基于硬件去考虑,使其相辅相成。这样,才能打造出一个完美的操作系统。
本文来源:出门问问