|
作者 馬寧
俗話說,物極必反,Windows Phone就像中國足球隊(duì)一樣,在所有人對(duì)他失去信心的時(shí)候,突然靈魂附體、RP爆發(fā),干掉了韓國隊(duì)。當(dāng)然,就像東亞四強(qiáng)賽說明不了問題一樣,MIX 2010上炫目的Demos只是過眼煙云,真正考驗(yàn)實(shí)力的還是幾個(gè)月后世界杯的戰(zhàn)場(chǎng)。
不過MIX 2010上的Demos的確給了曾經(jīng)的Windows Mobile開發(fā)者們帶來了一絲希望,最近一年,滿世界都是iPhone和Android,咱不是不想說話,實(shí)在是沒話可說啊。
MIX 2010 Keynote視頻:
http://www.microsoft.com/presspass/events/mix/videoGallery.ASPx
Windows Phone開發(fā)工具也可以在MSDN上下載了,下載地址:
http://www.microsoft.com/downloads/details.ASPx?FamilyID=2338b5d1-79d8-46af-b828-380b0f854203&displaylang=en
這里邊已經(jīng)包含了Visual Studio 2010 Express for Windows Phone, Windows Phone模擬器,Silverlight for Windows Phone和XNA 4.0 Game Studio。只要安裝這一個(gè)文件就可以了,不用滿世界亂找了,不過是在線安裝,網(wǎng)絡(luò)不快的同志們要淡定。
Windows Phone開發(fā)工具只能和VS 2010 RC版本一起使用,我安裝了Visual Studio 2010 Premium版本,能夠正確創(chuàng)建Windows Phone工程。
MSDN上關(guān)于Windows Phone開發(fā)的章節(jié):
http://msdn.microsoft.com/en-us/library/ff402535(VS.92).ASPx
打開VS 2010后,我的感覺喜憂參半,喜的是Windows Phone提供了兩種不同的開發(fā)平臺(tái):Silverlight for Windows Phone和XNA 4.0,憂的是,以前Windows Mobile的C++和.NET Compact Framework都用不上了。所以,以前的Windows Mobile程序員也要經(jīng)歷一個(gè)痛苦的轉(zhuǎn)型過程。
接下來,我們就看看Windows Phone帶來的雙重驚喜吧!
Silverlight for Windows Phone
Silverlight for Windows Phone險(xiǎn)些淪為一個(gè)笑話,Windows Mobile程序員在抱怨,Symbian上的Silverlight都出來了,Windows Mobile上的Silverlight在哪里?這次,Silverlight for Windows Phone來了,而且所有Windows Phone上的應(yīng)用必須用Silverlight來寫。
在程序菜單的XNA Game Studio 4.0下打開VS 2010,創(chuàng)建一個(gè)新工程,在Visual C#下找到三個(gè)模板,選擇”Windows Phone Application”。
不知道Phone List Application是啥,看起來Windows Phone的界面會(huì)以List為主了。點(diǎn)擊OK后,會(huì)直接進(jìn)入IDE的主界面:
似曾相識(shí),左邊是工具欄,可以拖拽控件到UI設(shè)計(jì)器上,與XAML界面對(duì)應(yīng)。我拖拽了一個(gè)Button和一個(gè)TextBox上去。雙擊Button,進(jìn)入了代碼編輯器。
namespace WindowsPhoneApplication1
{
public partial class MainPage : PhoneApplicationPage
{
public MainPage()
{
InitializeComponent();SupportedOrientations = SupportedPageOrientation.Portrait | SupportedPageOrientation.Landscape;
}private void button1_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Hello, Windows Phone," + textBox1.Text);
}
}
}
請(qǐng)?jiān)徫业臎]創(chuàng)意,Hello World靈魂附體!必須承認(rèn),Windows Phone開發(fā)工具的設(shè)計(jì)者用最大的誠意保留了.NET CF WinForm開發(fā)的痕跡,至少讓我們用起來不是那么別扭。
編輯完成后,直接按F5,Windows Phone Emulator會(huì)被啟動(dòng)。整個(gè)過程沒有任何拖泥帶水,這是我感覺最好的一件事。當(dāng)初配Android模擬器時(shí)那一大堆選項(xiàng),讓我實(shí)在有些不爽。
我的程序運(yùn)行起來就是下面這個(gè)樣子。MessageBox彈出來后,會(huì)有一個(gè)大大的Error標(biāo)題,看起來MessageBox在Windows Phone里主要是用來顯示錯(cuò)誤的。另外就是輸入法,帶有明顯iPhone的痕跡,不過對(duì)電容屏的支持看來不是問題了。
我還沒有仔細(xì)看Windows Phone Emulator的實(shí)現(xiàn)機(jī)制,不過從啟動(dòng)速度來看,絕對(duì)不是把整個(gè)Windows Phone放在模擬器里執(zhí)行了。原來Windows Device Emulator那個(gè)基于三星2410的小身板估計(jì)也跑不起來。反正也是Managed Code,估計(jì)又是JIT編譯那套。恍惚間,仿佛回到了Pocket PC 2002的年代。
Windows Phone新界面
既然把Windows Phone Emulator起來了,我們就順便參觀下Windows Phone的新界面吧。點(diǎn)左邊的Back鍵,會(huì)將應(yīng)用程序的Debugger斷掉,不知道程序是否退出了。點(diǎn)中間的Win Button,會(huì)回到主界面。不過主界面上只有IE一個(gè)圖標(biāo)。
旁邊一位同事看了后,脫口而出:“這不是Zune嗎?”嗯……
IE的用戶體驗(yàn)非常好,一開始新手發(fā)蒙,沒找到地址欄,后邊就非常順利了。無論是頁面縮放時(shí)的平滑動(dòng)畫,還是輸入時(shí)切換到適當(dāng)大小的設(shè)計(jì),都非常順手。特別是Multi-Tab的設(shè)計(jì),感覺非常舒服。特意試了Google Map,顯示一切正常。
哦,還有一點(diǎn),我在Windows Phone Emulator里沒有做任何配置,就可以上網(wǎng)了。
XNA 4.0
可能移動(dòng)開發(fā)者不熟悉XNA的名字,但是在游戲開發(fā)界,Xbox 360上的XNA則是大名鼎鼎。如今,Windows Phone一上來支持的就是XNA 4.0,與Zune HD上的XNA 3.1有啥區(qū)別?支持3D游戲!
目前我們看到的這個(gè)XNA 4.0預(yù)覽版只支持Windows Phone開發(fā),不支持Windows和Xbox 360的游戲開發(fā)(根本沒Zune HD什么事……始亂終棄?)。
不那么多廢話了,創(chuàng)建個(gè)XNA 4.0的新工程吧!
選擇Windows Phone Game就好了。IDE環(huán)境下沒有界面編輯器,需要程序員通過代碼來實(shí)現(xiàn)UI,在這里我就不寫代碼了。默認(rèn)程序運(yùn)行起來是一個(gè)空白的窗體。就讓它空著吧。未來,我們還要在這里寫很多東西……
寫在最后
趁著中午的功夫,匆忙地試了一下Windows Phone 開發(fā)工具,匆匆寫下此文。心中最多的還是感慨,我們不應(yīng)該將Windows Phone視作Windows Mobile的升級(jí)了,這是一個(gè)全新的手機(jī)操作系統(tǒng)。Windows Phone的功能可能沒有Windows Mobile豐富,但是他贏得喝彩,靠的只有四個(gè)字——用戶體驗(yàn)。
鳳凰涅磐,Windows Phone的路還很長,但是我們這些緊緊追隨的開發(fā)者們,要得不就是對(duì)未來的一絲憧憬嗎。
it知識(shí)庫:雙重驚喜:Windows Phone 開發(fā)者工具初體驗(yàn),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。