1.如果你已经在使用微软核心的Windows和Web开发工具和框架,你就有资格开始创建Windows Phone应用程序。
微软刚刚发布了最新开发工具的Windows Phone免费版:适用于开发图形化、事件驱动和富媒体的Web应用程序的Silverlight
4工具集;Visual Studio 2010;测试版Expression Blend 4可视化设计工具集;用于开发游戏的XNA Game Studio。
微软用户体验平台经理Brian Goldfarb说,发布这些工具之后,50万Silverlight开发人员一夜之间变成Windows
Phone开发人员。
微软的意图是让现有的大多数Windows和Web开发社区有能力立即开始制作Windows Phone应用程序。他们是否将实际制作Windows
Phone软件还有待观察。但是,如果Windows桌面和Web社区决定利用他们现有的经验制作或者应用Windows Phone应用程序,这就会显著扭转以前的Windows Phone软件市场份额快速下降的局面。
2.虽然Windows Phone 7支持多任务,但是由于基础的Windows Embedded CE R3内核,开发人员在最初的发布版中还不能利用多任务功能。
微软本身在这个操作系统中可利用多任务功能。对于用户和开发人员来说,一个应用程序在用户转换到另一个应用程序的时候会暂停,第一个应用程序会被操作系统关闭以便重新收回处理器或内存资源。
微软Windows Phone 7开发人员体验合作伙伴部门计划经理Charlie
Kindel说,这不是一个草率的决策。微软考虑了可能采取的措施,为开发人员和用户创建和使用手机的后台处理能力,以及这对所有的重要用户体验可能造成的影响。这个结论是:可能必须构建许多基础设施,并且会增加许多复杂性。
同时,微软官员称,Windows Phone 7平台为应用程序提供了广泛的集成和服务。这些应用程序提供了用户需要的多任务。例如,如果你在Windows
Phone 7设备上开始播放一曲音乐,如果你从音乐应用程序转换到其它应用程序,这个音乐将继续播放。用户界面里的“活动图标”——智能矩形和正方形,能够连接到手机或者基于云计算的服务和应用程序——与微软免费的Windows Phone信息推送服务一起,为开发人员、他们的应用程序和服务提供一个不断通知和更新基于手机的程序的途径,比如说,NCAA比赛的最新得分。
Kindel说,这个目标将保证我们控制整个用户体验的质量。他说,我们发布这个操作系统的下一个版本的时候将解决多任务问题。但是,那也不意味着没有限制地使用多任务功能。
iPone与Windows Phone 7对比
Kindel说,他给自己的女儿购买了一部竞争对手的智能手机。几天以后,他女儿对他说,我们应该把这个手机退回去。这个电池只能使用3个小时。Kindel的结论是她下载了一个多任务的社交网络应用程序:这个程序打开并且保持一个不间断的连接和进行数据交换。这就很快耗尽了电池。他对他的女儿说,这不是一个糟糕的应用程序,而是一个糟糕的手机。
微软不想有一个糟糕的Windows Phone
7手机。从广义上讲,这个理由与苹果提出的理由类似,苹果的iPhone操作系统也有多任务功能并且也限制开发人员使用这个功能。
3.Windows Phone 7设备上不允许有本地应用程序
所有的Windows Phone应用程序都是微软所说的“管理的代码”,并且将在下面两个运行时间环境中执行:用于游戏的XNA Game
Studio或者用于所有其它应用程序的Silverlight。
拥有Windows Phone
7,微软决定向用户和手机开发人员提供一个高度一致的操作系统。这种一致性的一方面是与手机厂商和移动运营商合作伙伴共同开发的一个标准的、不可改变的硬件配置。第二方面是主要用户界面的整个设计。用户界面是用户与其手机、内容和应用程序交流的方式。
第三方面是各种限制(这些限制在未来的发布版中也许会改变)。这些限制是微软压倒一切的重点以保证Windows
Phone设备的流畅的、高度个性化的、可靠的、没有故障的用户体验。禁止使用本地应用程序是一个限制。另一项限制是应用程序只能通过Windows卖场服务安装:到目前为止还没有按需装载的软件。
对于一些使用老版本的Windows Mobile(现在叫Windows Phone
Classic)的开发人员,这种管理的代码环境将让他们气愤。一个开发人员在官方的微软Windows Phone开发人员环境博客中发表评论说,他现在似乎不再能够使用.Net中的非管理的或“不安全”的功能。在.Net中这样做会得到性能上的好处。
4.开发人员访问微软的一种免费的SQL Server嵌入式数据库SQL Server Compact不是最初发布版的一部分,因此,你的数据库选择在开始的时候会受到限制。
据微软的Kindel说,微软正在使用SQL Compact作为Windows
Phone的一部分支持这个操作系统中的各种应用程序。这个数据库能够实现在这个“中心”的一些程序之间的数据共享。这个中心提供一套通用的任务把照片、音乐和微软Office应用程序等内容和应用程序组合在一起。
Kindel说,开发人员能够创建以XML文件为基础的“孤立的”本地存储和在他们基础之上的数据引擎。其它替代的方法是基于云计算的存储:一些MIX10演示强调了开发人员能够方便地应用微软云计算平台Azure中的广泛的资源。其中一个资源是SQL
Azure,这是SQL Server的一个云计算实施。
5.Windows Phone 7是“云计算手机”
SQL Azure是微软在Windows Phone
7中使用的唯一一个云计算服务。微软定义了三类云计算服务。第一类是你的代码在防火墙后面的服务器上运行并且显示为一项Web服务。Kindel说,这是Web 2.0的东西。
第二类是提供一个API(应用程序编程接口)的第三方Web服务。一个很好的例子是Twitter。Kindel指出,有许多基于Windows的Twitter客户端软件。所有这些客户端软件看起来都非常不同,但是,所有这些客户端软件最终都使用Twitter提供的API。微软支持这类拥有Windows
Communications Foundation、SOAP和REST等标准的云计算服务。作为.Net框架一部分的微软通用查询设施将直接集成到一个名为“语言集成查询”(Language Integrated Query)的应用程序中以便访问任何信息资源。
最后,微软有一些自己的云计算服务,特别是用于Windows
Phone的云计算服务。最初提供四个这种服务:信息推送服务、位置服务(支持GPS、辅助GPS和基于Wi-Fi的坐标)、Xbox Live集成,以及应用程序部署和Windows Phone卖场。
6.Windows市场旨在成为寻找和下载手机应用程序的唯一途径。但是,微软正在许诺替代的方法。这些替代的方法将让企业客户向用户私有组发布应用程序。
微软将在今年春季晚些时候披露更多的有关替代的软件发布渠道的细节。没有任何暗示表明这些渠道是安全的、市场网站的专有区域或者防火后面的部署。此外,随着Windows
Phone 7最初的发布,用户必须明确地采取行动进行应用程序更新。微软官员暗示称这个过程未来将是自动的。
7.“透明的”和快速的应用程序认证
微软将承诺认证Windows Phone应用程序并且把这些程序部署到Windows
Phone市场的一个简单的、明确的、快速的和开放的流程。一旦调试完毕,应用程序就将提交和验证。Kindle说,我们将公开测试应用程序并且自动检查你的I/O代码。我们还做其它额外类型的检查以便改善CLR(通用语言运行时间)性能和保证你不打破这个应用程序配套齐全的沙箱。
然后,这个应用程序将获得认证和签名,移交给部署服务并且出现在这个市场。在手机本身,这个市场现在是一个中心。它拥有一套功能、通用导航比喻和进行搜索、发现、购买和下载应用程序和游戏的任务。利用几行代码,开发人员能够向用户提供“先试用再购买”的方式试用他们的软件。在指定的时间段之内,或者在游戏中达到某一级别之后,用户可以付款购买和完全使用这个软件。
8.电池性能仍然未知
微软没有发布数据,也没有生产出的手机。但是,Kindle自己的原型手机在MIX会议第一天结束的时候仍然有反应。他在这一天不断地演示这款手机。微软官方表示,Windows
Phone 7是为减少电池使用精心设计的。
据Kindel说,所有的用户界面不仅是由应用程序处理器加速的,而且还是由单独的图形处理器加速的。这是Windows Phone
7硬件技术规范中要求的。信息推送服务等其它功能旨在智能地和最低限度地使用电源。