`
seya
  • 浏览: 359906 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

WindowsMobile与Android的比较

阅读更多
从一个开发人员的角度比较Windows Mobile与Android

当前就移动系统来说,最火的两个系统应该是WM和Android了,自己工作的关系两个系统都有所接触,在这里想谈一下我对两个系统的认识,希望同大家一起分享。

开发工具

Windows Mobile的主流开发工具肯定是VS了,Android是Eclipse,两个比较来说,从移动开发方面来说,VS无疑要好过Eclipse,从调试来说,VS+ActiveSync对于模拟器和真机的支持做的很不错,VS的调试器比Eclipse要强好多,开发Android程序,经常会由于调试麻烦,退化到不用调试器,而是使用Logcat来定位错误,原因是adb(Android中类似于ActiveSync一样的同步工具)真的还是一个beta的产品,能用但不好用。但是Android可以在Linux开发,我也相信,在大多数企业级开发中,基于成本的考虑,企业也会一般选择ubuntu来进行开发,在Linux的世界里,免费开源才是王道。   

SDK资源

MSDN+Emulator+广阔的博客资源(但我们Windows Mobile 博客园小组就有很多资料),Windows Mobile的开发非常丰富,而Android也因为事刚刚推出的系统,学习的资源很少,google开放的SDK也并不全面,经常在开发Android的时候,一个小小的问题通常都会研究很久,代码资源就更少了,而且一个事实是:很多厂商都在定制自己的Android,这样Android可能会因为不同的裁剪修改而让SDK统一不起来,进而让Anroid程序不能相互兼容。

开发语言与系统结构

JAVA与C#,不分伯仲,语言的特性来说,就不用细说了, 这里想从一个HelloWorld来谈一下在开发思路上,两者有多少不同。对于Windows Mobile来说,

一个HelloWorld,只需要创建一个工程,拖个Lable和Button,在Button响应事件里写:this.lable1.Text="Hello Wolrd";

而Android,也需要创建一个Anroid工程,完了之后,就不能拖拽了,如果要实现一个和上面一样的效果,首先得创建一个Activity(这个东西类似于一个Form减去UI的东西,他加上View就能实现和Form一样的UI),然后到layout里,添加一个Layout.xml,这个事用来配置Form上Lable和Button的布局,然后,在Activiy中要写上一句: setContentView(R.id.Layout),R这个类是自动生成的类,类似于WM中Designer.cs,然后获取以下Layout中的Button,

Button button = (Button) findViewById(R.id.btn);

button.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

TextView text=(TextView)findeViewById(R.id.text);

text.setText("Hello World");

}

完事之后,Debug一下。比较下来,确实麻烦一点。

另外我想说一下Anroid中的Intent,在WM中,窗体之间是可以相互引用 ,这样可以实现功能和界面上的跳转,而Android中Activity是不建议进行相互间引用的,他们之间是通过Intent相互通信的,Intent不但可以实现应用程序内的通信,还可以实现同一平台下应用程序之间的相互通信的,这一点来说,WM正是欠缺的。

UI设计

Windows Mobile 6.5发布了,从整个UI Framework上来说,并没有做多大的改动,WM的UI从一开始就在被PC绑架,很多用户都不认可这种Windows的UI,可能在Windows Mobile 7,微软会觉悟过来,抄袭模仿一下iphone,到时候做到很炫应该没什么问题,而Android的UI风格和iphone有些相似(肯定有模仿借鉴),如果要设计漂亮酷炫的UI,Android肯定会赢过WM,一个Dialog,在Android下可以设计任意喜欢View,然后把View Set到Acitivty上(并不是说WM不能做,重写MessageBox类,通过GDI,费点劲也能做出来,但是他和整个OS UI风格肯定是不相称),而对于基础控件来说,无论ListView,特殊Button,TabView等,比较WM来说,在缩放,切换行为,滑动的动画效果来说,WM肯定是很土的。其实使用C++,在WM也有很多炫酷的应用,比如说Pointui ,但是开发成本很大,而且WM要赢,OS的UI Framework才是比拼的重点,这样之上的APP才能有更加丰富的应用。

开放性

这个肯定是Android大赢了,包括iphone,Symbian,MTK等,Android的开放性能使支持他的硬件更加多元,很多厂商运营商也加入进来,比如说AT&T,T-Moible,ChinaMobile等,运营商希望定制服务,让厂商制造他们指定的定制系统,来获取消费者的服务费用。不花钱的系统谁都喜欢,WM的高额授权费用和Windows Mobile的不开源(也不可能开源),让WM比较开发系统来说生命力上还是差很多的,Android与WM的博弈,并不是MS与Google的正面交锋,而是google扔给了全世界喜欢免费Mobile OS的厂商,让他们来和MS干,而Android的大赢,将会是手机厂商(比如说摩托,三星等因为手机卖了很多而且没给别人交授权费),移动运营商(因为用的人多了,交的网络流量费,流氓服务费也收的多了),半导体公司(高通,TI等,芯片出货量大了),软件公司(各个公司有各个公司的小算盘,比如说谷歌,肯定是搜索广告垄断了Android,app软件在以后的app Market里收钱。。。)

类库和应用软件

这里想说一下浏览器和数据库,WM有Mobile IE和Sqlserver Compact,Android有WebKit和SqlLite,未来的移动操作系统将会是Web OS特性的系统,本人觉得WM最欠缺的也就是这个方面,未来的Web应用将会更加多元化,web程序和本地程序对用户来说应该是透明的,Android中一个非常大的亮点就是Widget,在Home上Widget的数量要远远大于本地应用,因为Widget是轻量级的,夸平台的。 Moible IE的核心与WebKit是不同的,但是使用HTML+JS+CSS的应用程序,将使Widget无论在PC还是各种手机上,只要有浏览器,就又可以至少跑起来,也希望MS不要冒天下之大不惟,再搞一套自己的JS标准。在WM 6.5中,Mobile IE虽然有不错的进步,但创新的应用还是远远不够的,希望MS在WM上能少一点抄袭模仿,多一点创新性革命性的应用。另外,Android集成sqlLite,这样很容易能够配合着做一些复杂的信息处理应用,包括Android中SMS,MAIL等也都是使用SQLLITE,WM的SQLSERVER比较起来还是有点大,以后希望WM直接集成进去,并且推出一套类似于Android的ContentProvider(对数据库,XML等信息载体进行集中管理存取的对象),能够更加方便高效的使用这些信息载体。

云计算

在本次的MWC上,MS推出了My Phone,这是个很实用的云应用,对于Android与WM来说,讨论云计算并没有太多意义,这里只是想说google与MS的竞争,对于Google来说,己出的Android未来肯定会获得google的移动精确搜索,google地图等云计算的支持 ,对于MS来说这些都是短板,希望MS赶紧把yahoo搜索搞定,将来手机服务才是王道,也许Android与WM都会退化成一个带着浏览器的OS,那个时候,才是MS与google死掐最激烈的时候。

来自:http://www.cnblogs.com/abob/archive/2009/02/27/1399693.html
分享到:
评论

相关推荐

    Windows Mobile与Android简略比较

    随着Windows Mobile 7的发布,微软尝试改进UI,以期达到与iPhone类似的用户体验,但Android在自定义UI方面仍然更具优势。 总的来说,Windows Mobile和Android在开发环境、资源支持、开发流程以及用户界面等方面各有...

    Windows Mobile和Android获得IMEI、MEID和IMSI demo

    Windows Mobile和Android获得IMEI、MEID和IMSI demo Windows Mobile是从别处拿来的, sim5.rar是IMEI、MEID和IMSI demo CallGetDeviceUniqueId是获取window mobile系统UID的另一个方式 Android很浅显,一起共享吧

    Windows Mobile 6.5 for iPAQ 114

    尽管现在Windows Mobile已被新的操作系统如Windows Phone和Android取代,但Windows Mobile 6.5在当时的影响力不容忽视,它为移动设备的操作系统设定了标准,并且在iPAQ 114这样的设备上展现了其强大的生命力。

    Windows Mobile 设备管理器

    虽然Windows Mobile设备管理器在Wince系统下功能强大,但与Android系统不同,Android通常使用ADB(Android Debug Bridge)作为主要的设备管理工具。ADB支持通过USB连接进行设备控制、文件传输和日志记录,而且在...

    windows mobile直连版本

    《Windows Mobile直连版:大华客户端在移动设备上的应用详解》 Windows Mobile直连版本是专为搭载Windows Mobile操作系统的手机设计的一款监控客户端软件,它使得用户能够在移动设备上实时查看、控制以及管理监控...

    windows mobile滑屏解锁

    现代的智能手机系统,如Android和iOS,已经内置了更为先进和多样的解锁方式,如指纹识别、面部识别等,这些都是Windows Mobile时代所不具备的功能。尽管如此,了解Windows Mobile滑屏解锁的历史和S2U2软件,有助于...

    windows mobile 蓝牙连接程序

    然而,随着智能手机的发展,Windows Mobile操作系统逐渐被Android和iOS取代,这类程序在现代设备上的应用已经不多见。但对于那些仍在使用Windows Mobile设备的用户,这样的程序依然具有很高的价值。

    Windows Mobile 手机应用开发

    在Windows Mobile手机应用开发...不过,需要注意的是,随着技术的发展,Windows Mobile已经被现代的Windows 10 Mobile和更广泛的Android、iOS平台所取代,但学习其开发经验依然对理解移动应用开发的底层原理有所助益。

    windows mobile 开发者新手上路指南.rar

    尽管Windows Mobile已经被更现代的平台如Windows Phone和后来的Android、iOS取代,但对于学习移动开发的历史和技术演进,它仍然具有一定的参考价值。 二、开发环境搭建 1. 安装Visual Studio:作为主要的开发工具,...

    移动行业信息化-Windows Mobile程序员玩转Android开发.doc

    Windows Mobile遵循的是传统的操作系统与硬件分离模式,允许开发者使用托管代码(如.NET CF)进行开发,而Android则是基于Java的开放平台,同样支持操作系统与硬件的分离。两者都提供了免费的SDK和集成开发环境(IDE...

    《windows mobile程序应用开发》源码

    Windows Mobile提供了一套API,如CE API和.NET CF类库,用于与操作系统进行通信。例如,源码可能会包含如何使用GDI+进行图形绘制,如何利用SMS和电话服务API实现通信功能,以及如何通过WMResource访问设备资源。 ...

    windows mobile模拟器

    Windows Mobile模拟器是一种软件工具,它允许用户在个人计算机(PC)上模拟Windows Mobile...虽然现在Windows Mobile已经被更现代的Windows 10 Mobile和Android所取代,但在特定场景下,WM模拟器仍然有其独特的价值。

    WindowsMobile模拟器

    此外,随着Windows Mobile逐渐被Windows Phone和后来的Android、iOS等平台取代,模拟器的使用也相应减少。 总的来说,Windows Mobile模拟器是开发和测试Windows Mobile应用的重要工具,它提供了在桌面环境下模拟...

    Windows Mobile PPT

    **Windows Mobile PPT** Windows Mobile,作为微软在移动设备领域早期的操作系统...虽然现在Windows Mobile已被更现代的操作系统如Windows Phone和Android所取代,但其背后的开发原理和技术仍然对移动开发有启示作用。

    windows mobile 常有内部程序调用

    随着移动互联网的发展,虽然该系统的市场份额逐渐被iOS和Android所取代,但在其鼎盛时期,Windows Mobile为移动设备提供了丰富的功能支持。 #### 内部程序调用的重要性 内部程序调用是Windows Mobile系统实现复杂...

    Microsoft Windows Mobile.zip

    - **WindowsMobile**:指的是微软为移动设备开发的操作系统。 - **PC联连**:指Windows Mobile设备与个人计算机之间的连接,通常用于数据同步和管理。 - **同步**:指在PC和移动设备间传输和更新信息的过程,确保...

    Pro Smartphone Cross-Platform Development: iPhone, Blackberry, Windows Mobile and Android Development and Distribution

    本书《Pro Smartphone Cross-Platform Development: iPhone, Blackberry, Windows Mobile and Android Development and Distribution》由Sarah Allen、Vidal Graupera 和 Lee Lundrigan合著,于2010年由Apress出版社...

    Windowsmobile技术和市场总结.pdf

    文档提供了Windows Mobile与其他平台如Android、Symbian、Blackberry和iPhone的竞争情况。虽然文档提到了部分市场数据和比较,但是由于文档片段的不连贯性,这部分信息较为零散。 由于文档内容是通过OCR技术提取的...

    Windows Mobile开发概述

    然而,随着Android和iOS的崛起,Windows Mobile的市场份额逐渐下滑,微软在2010年后推出了Windows Phone作为其新的移动操作系统战略,Windows Mobile逐渐淡出市场。尽管如此,理解Windows Mobile的开发过程对于理解...

Global site tag (gtag.js) - Google Analytics