GOOGLE PHONE引爆手机产业新机会

本文作者:admin       点击: 2008-03-13 00:00
前言:

由Google为首组成的Open Handset Alliance所制定的手机软件─Android ,主要的目的不在于像自由软件般的开放,而是期望将这样的平台吸引更多人加入,简单照片说明:Google Phone概念机首次在GSMA大会亮相,图片来源: http://www.telekomidag.com/nyheter/artikel.php?id=23861

到犹如邻家的女孩都能参与移动应用的开发。因此,最棒的部分是应用程序的发展。 因此它提供的特定应用程序framework,以一个标准的应用程序接口去进行程序设计,使用应用程序framework提供的功能,以进行各式各样的应用系统的需求与发展。 对于这点,我们可以预期同机种的Android 手机会有不同的操作环境接口,对于不同族群在同一款的手机执行不同的应用系统将如同现在的个人计算机。 

自从Google 于2007年11月12日开放Android 手机软件解决方案之后,就形成了备受注目的焦点,电信业和手机业以及学界莫不纷纷收集相关的信息,探究Android 到底具备何种能量,是否能在Symbian 和 Window Mobile 两强环伺下,是否可能成为手机软件三强鼎立的局面。 Android 究竟是什么样的软件,其特点如下:

1. 应用程序(Application) framework
可重复使用或更换的软件模块,每个模块都有其特定的功能。 其原始码目前并未公开,仅供外界使用应用程序接口(API)存取其内部的功能,事实上,公开之后也很难控制,再者那么多的硬件平台要让应用程序framework维持均一的功能并不容易。 短期间不太可能公开原始码。

2. Dalvik 虚拟机器(virtual machine)
先从Dalvik 开始说起,它被称是一种Java的虚拟机器(Virtual Machine),针对手机最佳化的适用于低内存的要求,它可以利用底层操作系统和将程序(process)隔绝得以同时执行多种执行绪。 比较Dalvik和VM(虚拟机器) 的运作过程,Dalvik运作方式并非将位码纳入再解译执行,而是用一种工具叫DX,将原来的JAVA 类别档案转换为另外一种格式型态,成为新的类别型态。dex的格式。Java 的位码(bytecode)是属于堆栈导向(stack-oriented) 因此,很适合解译的使用但也因此导致执行的效率却因而降低,这是因为处理器原本就采用缓存器导向的运算模式。 也因为Dalvik是采用缓存器导向,所以有更优更快的执行效率。

3. 整合过的浏览器 ( Integrated browser)
使用自由软件Webkit 的引擎所开发的浏览器。

4. 优化的图形处理 (Optimalized Graphics)
客制化的2D图形链接库和OpenGL ES 1.0 规格的3D图形处理。

5.具有小,快,稳定的数据库引擎SQLite
目前共有11个类别,都是处理数据撷取后提供后续处理得部分,属于客户端的功能。

6. 声音影像格式支持
对手机的应用而言,实在是足够了(MPEG4,H.264,MP3,AAC,AMR,JPG,PNG,GIF)。

7. 蓝牙、Wifi、GPS 电话功能、EDGE、3G、照相功能、指南针等
以上都是和硬件密切相关的部分,Android 只是具有相关的软件模块,最后是否能够实现还必须依赖硬件配合。 这些都是很炫的东西,但对于手机而言,它的电池能撑多久,光是GPS一项对电池使用来说,就是一大考验。
8.良好的开发环境

可以使用Eclipse 整合开发环境开发Android 有关的应用程序,可以安装Android Development Tools (ADT) 的插件(plugin),具备一个仿真器可以提供侦错,与执行。 

Android 的重点

Android 主要的目的不在于像自由软件般的开放,而是期望将这样的平台吸引更多人加入,简单到犹如邻家的女孩都能参与行动应用的开发。因此,最棒的部分是应用程序的发展。 因此它提供的特定应用程序framework,以一个标准的应用程序接口去进行程序设计,使用应用程序framework提供的功能,以进行各式各样的应用系统的需求与发展。 对于这点,我们可以预期同机种的Android 手机会有不同的操作环境接口,对于不同族群在同一款的手机执行不同的应用系统将如同现在的个人计算机。 

APACHE 2.0 授权

当然,由于Android 标榜为行动软件平台,目前是开放使用,但是未来会采取Apache 2.0 授权条款,相较于许多 Free & Open Source Software(FOSS)所采取 GPL 的授权条款,两者的差异在那里呢?

1. Apache 2.0授权条款允许开发软件使用的公开原始码开发自由软件以及专属和非公开原始码软件。 这会影响电信软件业者愿意使用Android,因为它会有相当部份会和电信运营商现有的软件进行整合,如果这些商用软件毋须公开原始码,当然保护了他们的利益。 如此的做法,固然提供软件开发业者与电信运营商对于投资的保障。 但是,也失去对开放的承诺。

2. Apache 2.0视授权者愿意将程序的专利技术授权释出(Patent License)。但是,GPL 授权则不同意专利授权,在特殊情况下,使用GPL授权的软件可能会有侵害专利权的可能发生。
往好处想Android 的解决方案对于不同的硬件平台具有得降低开发成本的效果,不过客制化仍然需花费相当的开发时间与成本。 这点恐怕无法从要求公开原始码捞到任何好处。 

从Android 的软件架构来看,他的应用程序接口和应用程序framework都是java 语言,可是底层的内建链接库却不是,对于一般开发者而言,没有方法可以新增内建链接库。在实际的运作上程序,应用程序framework,链接库三者运作依存度很高,举例而言,如果要增加一个网络电话的通信协议,例如在oSIP 上增加应用层,以作为Android 的网络电话应用,由于没有公布链接库的规范,应用程序framework的规格,可能无法新增语音影像的codec,其它通信协议,都不利于吸引更多的软件开发的形成。 
Android 能否成功营造为一个社群

但是,是否可能形成一种由GOOGLE支持的社群来维护的行动运算平台? 和过去REDHAT 把自由软件的原始码释出成为FEDORA 交由一个LINUX 的社群去维护,用户可以自由从网络下载使用,果真实现的话,Android 成功的机会很大,尽管这个难度很高。 

Android 释出后的一些观察与想法

1. Android 所提供的SDK是以JAVA为核心,虽然是号称行动运算平台,但它并非实行JAVA J2ME的开发方案。 也不采用JSR提供的支持。 这点有可能造成Java阵营分裂的局面,会令JAVA的开发者产生壁垒分明的状况,许多现成的成果不适用在Android 。 

2. Android 仅提供API作为开放的范围,依照GOOGLE的官方说法认为它是一种软件堆栈(software stack),因此,目前对于硬件,原生链接库,以及SDK的原始码并未开放。 在以后是否可能产生其它的问题,还要等一阵子才能知道。

3. 操作系统采用Linux和基本library 用以提供SDK 和 Dalvik JVM的运作。 以提供应用程序的执行。 但是这次平台的释出却没有提供原始码,如果没有循序逻辑图,得靠再次加工才能更深入了解SDK。 使用者的抱怨往往来自文件说明并不清楚,因此原本Android 比赛到3月底前截止报名,最近又延后了。 再者开发的应用程序是否能够在所有硬件平台以及Dalvik 上执行正常,这点尚未得到确认。Android 其实应该和SUN 共同解决。

4. 对于嵌入式的C,C++的开发人员而言,Android 似乎仅有原生链接库(native library ) 可以着力,但是缺乏链接库的的标准以及如何移植的方法。 能否有更宽广的机会吸引相同对象编程观念丰富的链接库,在使用上能有更多的选择?

5. Android 对于组件和包装库的管理并不采用公开的标准,例如OSGi。 它造成用户和软件供货商的困扰,虽然OSGi并非完美但它却制定了一个开放性的使用方式,使得软件服务供货商所提供的应用程序和服务,能依照使用者需求,下载到最靠近用户的网关器,并且能够自动安装执行,依循这样开放标准,改善用户使用习惯,使软件服务供货商有依循的标准。

6. 透过Telephony API可以管理许多Android。的package,用在电源的控制,SMS的发送等,美中不足的是缺少一个现有JAVA 的接口作一制化整合。
7. 对于程序之间的交换上因为Android 不实行开放的标准如CORBA,DBUS,RMI,SOAP等,有可能产生部份的缺失。 这个部分的标准之所以会产生,有其存在的价值,单靠Android的API足以弥补这些间隙吗?

8. 聪明的是Android采用Apache 2.0 授权,可以允许用授权的原始码开发自由软件以及专属的非公开软件。 许多电信公司倒会乐意将现有的软件透过API整合到其维运环境。 由于Android 标榜为行动软件平台,使用Apache 2.0 特许 的Dalvik当然毋须支付JAVA的授权费用。 但是只省了SUN的权利金,就被迫放弃许多良好的成果其实相当可惜。 虽然CLDC,MIDP不尽完美,但是已经做的不错了。

结论

Android 的策略固然促使行动运算加入因特网的发展,其实这也是未来的趋势。 正如许多发展中的国家,一般人第一次接触网络不是先经由个人计算机而是透过行动电话。 透过更多参与者贡献的点子,如果得以实现,将有更多用户透过使用网络使GOOGLE 的营收获益。 
单靠GOOGLE 一万多名的员工已很难加速软件的发展,不如运用一个优化的开发工具使得天下的英才都能进入 GOOGLE俱乐部,将好的点子贡献出来,只用1.000万美金,就可吸引众多好手竞相投入比赛。 又制造出一个话题实在有够划算。 

Android 的移动电话一旦成为潮流之后,将使其它业者的产品在整个IT和电信产业的影响力随之降低。 因此不十分开放却又免费的Android行动软件平台将有举足轻重的影响力。
GOOGLE 真是会在对的时间做对的事。