由于工作原因,开始关注、学习android平台。经过半个月的熟悉、学习,先写写自己对android这个平台的一些分析吧。(以下节选自己写的一个可行性分析报告)

1.1破局者android(现状分析)

1.1.1原有的手机平台格局被打破

J2ME不能归属于平台范围,Linux已是昨日黄花,Iphone风头很劲但个头还小。SymbianWMMTK在手机平台中三国鼎立。硝烟弥漫中,巨人Google举着“开放”的旗帜,甩出了“android”牌面,许多常年饱受平台牵制的势力开始暗流汹涌。虽然android初出茅庐,论个头还不如Iphone,但“开放”这股趋势的力量已使这颗新星足够明亮。当然,背靠巨人,也是它格外引人注目的原因。

1.1.2手机厂商有了选择机会,不再被平台掐脖子

为了寻找Android平台JNI应用的发布办法,花了将近一个星期,翻阅了很多国内外的BBS,都一无所获。最后,意外地发现宝岛很多BBS中有大量的JNI原创文章,和作者多次msn后,终于获取了解决之道。

台湾人为何对androidJNI如此感兴趣地深入研究?仔细分析一下,不难发现其原因。新竹号称全球最大的移动硬件生产、代工基地,常年来饱受平台商的牵制,干着有苦又累的活儿。在宝岛BBS上可以看到不少文章写着“android是掉入新竹的幸运种子”。这对竹科来说,是一次软硬结合的机会。

对庞大而技术力量却不高的国产手机厂商(包括设计公司)来说,这当然也是一个软硬结合、提升实力的机会。据市场反馈,不少厂商已经制定了android手机开发计划,据说将在7月左右出货(会不会是OMS??)。

3G来临,压力最大的自然是网络运营商,他们原本坚不可攻垄断地位,开始受到互联网企业的强有力挑战。Iphone口气强硬地要求移动、联通给他们提供营业分成;移动的OMS系统已经可用,联通也要启动自己的OS平台;由此可见,网络运营商也对强烈期待着开放、可用的平台。

1.1.3用户可以采用类PC方式,升级、更换手机OS系统

Android的开放模式,使用户有机会体验PC方式的OS系统升级,甚至是OS系统更换。在国内很多android网站中都能看到针对Gphone1androidROM下载,这些androidROM不但包含了各种版本的内核,还附带了很多实用的应用软件,包括有:汉化、输入法、短信管理、来电管理、软件安装等等。这种情况让我联想到了windows平台上番茄花园、深度XP等等。

番茄花园惹上了官司,但发布androidROM应该是合法合理的事业了。这种利人利己的事业做大了,我们UC也可以考虑找他们谈预装合作了!

1.2android平台特点

Android平台的特点我只抽象了2点,我认为这两点是其他平台不具备的,是导致android和其他平台巨大差异之处。

1.2.1平台开放性

Android平台的开放性网络上、报刊里已经谈的很多了,无需细讲了。

不过,还是需要指出,这种开放性是带着明显的“阶级歧视”特征的。Google4月底发布的SDK1.5,通读其SDK文档,仍然是没有丝毫提交JNI之处。Google的态度很明确,请第三方应用开发商都在Java层次上进行应用开发。Android延续Linux的血脉,骨子里支持CGoogle却对外紧闭C之门。能使用C开发的当然是门内之人:平台制造者Google及手机厂商了!“门内人”与“门外人”,阶级便产生了。

很多开发人员都认为:短期内,Google这个策略不会改变。这点上,我顺从民意。

1.2.2android不是OS,更应看作是应用框架

我们常称的android平台,是由linux+framework组成。Android便是指代frameworkAndroid平台的架构图如下:

有上往下,第一、第二及第三层的一部分都属于framework(即android),第四层LinuxKernel便是一个完整的LinuxOS核心层。

其中,第一层(Applications)、第二层(ApplicationsFramework)都由Java实现;第三层主要实现系统支撑性功能,包括我们熟悉的网络浏览器内核WebKit,而第一层(Applications)的Browser便是基于WebKit实现的。

这种平台架构模式和我们常见的symbianWMMTK都有着明显差异。在symbianWMMTK中,JVM只是一个可分离的组件;而Android使用一个JavaApplicationFramework隔离了Applications层,即JVM支撑起了一个天空。这个构架上的差异决定了开发方式的差异。在symbianWMMTK中,java是一个可选的开发方式;而在Android架构上,Java成了必选的开发方式了(是指Application开发,Service开发是可以完全使用C的)。

1.3android平台风险点

1.3.1不够成熟,SDK扔处于频繁变动期

一个平台的成熟,需要时间的沉淀。SDK变动、不兼容等问题在大多数平台都能看到,包括symbianIphoneMTK(变动最大的当然是MTK,就连MTK自己的开发人员也不清楚“某个函数,到底哪个版本支持,哪个版本不支持”)。Android同样存在这个问题,其SDK1.01.11.5都有不小的变动。这方面做得最好的当然是M$WM

1.3.2百花齐放看似很美,也有天生的缺点

这个结论是根据Linux发展历史总结而来。LinuxWindowsPC预装。。。。。;手机Linux的没落。。。。。。;

根源:Linux看似免费,但缺乏技术支持和成熟的应用,厂商实质付出更多。

不好的苗头:Google为主,HTC要发展自己的版本,移动力推OMS,各个版本之间如果不能有效沟通,保持接口一致性,必然会增大应用软件的开发难度及开发成本。

出路:需要有强大的领导者,需要在多样性和一致性上取得平衡;android坚持用JavaSDK作为应用层接口,这个也可能是其决策的因素之一。

1.3.3用户需要的才是硬道理

据说MTK已经和MS达成协议,将为WM开发硬件平台,MS也将针对MTK的硬件平台对WM进行优化。MTK的观点比较有意思,以下是在网络中看到的一篇文章:

机会来了,前几日联发科账务长兼新闻发言人喻铭铎以及联发科中国首席代表廖庆丰等一行三人到深圳,专门“招见”了我,我也弄明白了其中的道理。

“我们董事长的想法是要让中国老百姓用到更实惠的功能,微软的WM能给中国广大的用户带来他们需要的更实惠的功能。”喻铭铎这样对我解释道,“WM目前最稳定、最成熟,有非常多的公司为他们写应用软件。”

他对《国际电子商情》解释,在他们进行选择之前,做过很多调查,发现中国大多数用户还不习惯于用手机上网google,更多的时候,他们对基于WM开发的一些新兴功能更感兴趣,当然还有重要的一点是这些应用不会产生上网流量。“我们主要还是针对中国广大的老百姓市场,智能手机也一样。”他说。

<!--EndFragment-->

更多相关文章

  1. 【技术调研】WebP格式在Android平台上的应用
  2. Android平台上基于OpenCV的道路循迹
  3. 【平台开发】如何有效的收集 Android(安卓)日志?
  4. Android(安卓)SDK版本和ADT版本
  5. Android为什么选择Java作为开发语言之我见
  6. 修改编译android文件系统编译链版本
  7. cocos2d-2.0-x-2.0.3多平台环境搭建(android, win32)
  8. Android学习笔记(一)-Android与3G简介
  9. Android(安卓)NDK开发(四) 将FFmpeg移植到Android平台

随机推荐

  1. 【072】◀▶ Android(安卓)(IV) - 显示及
  2. android TextView 垂直自动滚动字幕实现
  3. android 设置控件的透明度
  4. Android(安卓)远程图片获取和本地缓存(三)
  5. Android开发人员得让短信应用程序准备好
  6. android Looper学习
  7. Android模仿QQ的左右滑动切换界面和下拉
  8. Android(安卓)播放视频(四)VideoView全屏
  9. 关于修改Android手机的音量
  10. android service 之startService(...)