首页 > 嵌入式软件 > windows phone

这是为《程序员》4月期写的文章,是在《双重惊喜——Windows Phone Developer Tools初体验》的基础上增加了一些内容,包括WebBrowser空间、MediaPlayer空间,还有一个非常简单的XNA程序。希望对Windows Phone开发有兴趣的朋友有一些帮助。

本文引用地址: http://embed.21ic.com/software/windowsphone/201310/30851.html

Windows Phone开发工具在MIX 2010上火热登场了。Windows Mobile开发者们压抑许久的热情终于爆发出来,对于Windows Phone的华丽转身,开发者们褒贬不一,有人对Silverlight、 XNA等新技术充满期待,有人对放弃以前版本兼容性、不支持C++开发满腹怨言。

无论如何,Windows Phone为我们带来了新的用户体验、新的开发工具,总比让开发者守着Windows Mobile的老面孔,一起慢慢变老,要好吧?下面,就让我们看看Windows Phone开发工具会为开发者们带来哪些惊喜,呃,或者惊讶。

Windows Phone开发工具的社区预览版(CTP)可以在MSDN上下载。其中包括Visual Studio 2010 Express for Windows Phone, Windows Phone模拟器, Silverlight for Windows Phone和XNA 4.0 Game Studio。目前,Windows Phone开发工具只能安装在Windows 7和Vista SP2上,还需要显卡支持DirectX 10。

打开VS 2010后,我的感觉喜忧参半,喜的是Windows Phone提供了两种不同的开发平台:Silverlight for Windows Phone和XNA 4.0,忧的是,以前Windows Mobile的C++和.NET Compact Framework都用不上了。所以,以前的Windows Mobile程序员也要经历一个痛苦的转型过程。

接下来,我们就看看Windows Phone带来的双重惊喜吧!

Silverlight for Windows Phone

Silverlight for Windows Phone险些沦为一个笑话,Windows Mobile程序员在抱怨,Symbian上的Silverlight都出来了,Windows Mobile上的Silverlight在哪里?这次,Silverlight for Windows Phone来了,而且所有Windows Phone上的应用必须用Silverlight来写。

Silverlight最大的优势在于与Expression Blend的无缝整合,可以快速设计出非常漂亮的用户界面,将程序员从繁琐的UI开发中解放出来。而且Silverlight for Windows Phone不再是Silverlight的子集,而是支持Silverlight的全部功能。这样的好处是,已有的Silverlight程序很容易移植到Windows Phone手机上。

在程序菜单的XNA Game Studio 4.0下打开VS 2010,创建一个新工程,在Visual C#下找到三个模板,选择”Windows Phone Application”。

 

 

不知道Phone List Application是啥,看起来Windows Phone的界面会以List为主了。点击OK后,会直接进入IDE的主界面:

 

 

似曾相识,左边是工具栏,可以拖拽控件到UI设计器上,与XAML界面对应。根据示例程序,我准备编写一个浏览器和媒体播放器,首先是从Toolbox中将MediaElement和WebBrowser控件拖拽到UI设计器上。

 

 

为了播放多媒体文件,我们还要在Solution Explorer里将wmv文件添加到工程里。做法和Windows Mobile工程一致,选择Content类型,wmv文件会和工程一起发布。

接下来就是编写代码了。MediaElement组件需要设置Source属性,然后调用Play方法。而WebBrowser选择Navigate方法来访问指定网站。

private void button1_Click(object sender, RoutedEventArgs e)

{

textBlockListTitle.Text = textBox1.Text;

if (Convert.ToBoolean(checkBox1.IsChecked))

{

webBrowser1.Visibility = Visibility.Collapsed;

mediaElement1.Visibility = Visibility.Visible;

// play Video

mediaElement1.Source = new Uri("Wildlife.wmv", UriKind.Relative);

mediaElement1.Position = TimeSpan.FromMilliseconds(0);

mediaElement1.Play();

}

else

{

mediaElement1.Visibility = Visibility.Collapsed;

webBrowser1.Visibility = Visibility.Visible;

// Browser

webBrowser1.Navigate(new Uri(textBox1.Text, UriKind.Absolute));

}

}

 

 

代码编辑完成后,选择Windows Phone Emulator作为目标设备。直接按F5,Windows Phone Emulator会被启动。

Silverlight for Windows Phone类库中增加了很多Phone独有的功能。Microsoft.Phone的命名空间下,包括Phone、电话本、电子邮件、Camera、Bing地图、Marketplace、浏览器和搜索等功能。Microsoft.Device.Sensors中包括各种各样的传感器,其中包括重力感应。Silverlight中还包括了Location和Push Notification等独有功能。

我的程序运行起来就是下面这个样子。程序带有强烈的Zune风格,不但有标题,而且还有明显的Block List Title。另外就是输入法,带有明显iPhone的痕迹,不过对电容屏的支持看来不是问题了。

我还没有仔细看Windows Phone Emulator的实现机制,不过从启动速度来看,绝对不是把整个Windows Phone放在模拟器里执行了。原来Windows Device Emulator那个基于三星2410的小身板估计也跑不起来。反正也是Managed Code,估计又是JIT编译那套。恍惚间,仿佛回到了Pocket PC 2002的年代。

 

换一批

延伸阅读

[行业资讯] 中国(南京)软件谷集成电路产业促进中心顺利揭牌

中国(南京)软件谷集成电路产业促进中心顺利揭牌

9月19日,在南京软件谷集成电路产业促进中心成立仪式及研讨会上,南京市经济和信息化委员会电子信息产业处柯康处长与中国(南京)软件谷管委会招商合作局李文华副局长共同为中国(南京)软件谷集成电路产业促进中心揭牌。 ......

关键字:集成电路 南京 软件谷

[行业资讯] Dialog将首次展示蓝牙低功耗传输立体声HiFi音频技术

Dialog将首次展示蓝牙低功耗传输立体声HiFi音频技术

高度集成且可配置的电源管理、AC/DC电源转换、充电和连接技术供应商Dialog半导体公司日前宣布,将在位于美国加州圣克拉拉举行的2018年蓝牙世界大会上率先展出通过蓝牙低功耗传输立体声HiFi音频的技术。该技术实现了通过蓝牙低功耗技术传输......

关键字:电源管理 半导体 电池续航能力

[行业资讯] 刘鹤在上海调研时强调充分发挥微观主体在科技创新中的重要作用

刘鹤在上海调研时强调充分发挥微观主体在科技创新中的重要作用

中共中央政治局委员、国务院副总理刘鹤17日在上海调研科技创新工作。他强调,要贯彻落实习近平总书记关于科技创新的重要论述,实施创新驱动发展战略,创造公平竞争的市场环境和良好创新氛围,充分发挥企业家、科研人员等微观主体在科技创新中的重要作用。 ......

关键字:集成电路 科技创新 刘鹤

[行业资讯] 阿斯麦仍看好EUV光刻机前景 最先进的NXT:2000i将于下半年入华

阿斯麦仍看好EUV光刻机前景 最先进的NXT:2000i将于下半年入华

中国集成电路制造年会近日邀请到了光刻机霸主ASML(阿斯麦)中国区总裁沈波参加,他出面解答了一些媒体关心的话题。 ......

关键字:集成电路 光刻机 半导体

[行业资讯] 英特尔前总裁推出首批数据中心芯片 采用ARM构架

英特尔前总裁推出首批数据中心芯片 采用ARM构架

据国外媒体报道,英特尔前总裁蕾妮·詹姆斯(Renee James)领导的初创公司Ampere Computing周二表示,该公司推出了其首批数据中心芯片,采用了ARM构架。 ......

关键字:英特尔 芯片 服务器

[真心话] 软件开源活动领航人Eric Raymond:C语言时代行将落幕

软件开源活动领航人Eric Raymond:C语言时代行将落幕

这几天来,我(Eric Raymond)在思考那些正在挑战C语言的系统编程语言领袖地位的新潮语言,尤其是Go和Rust。思考的过程中,我意识到了一个让我震惊的事实——我有着35年的C语言经验。每周我都要写很多C代码,但是我已经记不清楚上一次......

关键字:Eric Raymond C语言
条评论

我 要 评 论

网友评论

大家都爱看

  • 扇出型晶圆级封装的优势和挑战!

    我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…

    2018-03-29
  • Xilinx推出革命性的新型自适应计算产品

    自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…

    2018-03-20
  • 赛普拉斯为树莓派3 B+ IoT单板计算机提供强大稳定的无

    先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…

    2018-03-20
  • 观看直播领红包,SEED-A10加速卡助力人工智能

    随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…

    2018-03-19
  • 特朗普:博通不得以任何形式收购高通

    白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。

    2018-03-14