Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> 從一個開發人員的角度比較Windows Mobile與Android

從一個開發人員的角度比較Windows Mobile與Android

編輯: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正是欠缺的。

      類庫和應用軟件

   這裡想說一下浏覽器和數據庫,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推出了MyPhone,這是個很實用的雲應用,對於Android與WM來說,討論雲計算並沒有太多意義,這裡只是想說google與MS的競爭,對於Google來說,己出的Android未來肯定會獲得google的移動精確搜索,google地圖等雲計算的支持 ,對於MS來說這些都是短板,希望MS趕緊把yahoo搜索搞定,將來手機服務才是王道,也許Android與WM都會退化成一個帶著浏覽器的OS,那個時候,才是MS與google死掐最激烈的時候。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved