Windows Phone 7 开发 31 日谈——第22日:应用?还是 游戏?

本文是“Windows Phone 7 开发 31 日谈”系列的第22日。

昨天,我发了一篇极长的关于Silverlight Toolkit for Windows Phone的文章。今天的会短一些,但却非常珍贵。我会讨论你的应用程序设置中非常细微但很重要的设置:类别(Genre)。

    如果你创建过一个默认的Windows Phone应用程序(或一个默认的XNA应用程序),并将它部署到模拟器中,你可能会发现它会出现在应用程序列表中(就是当你在起始界面点击右上角箭头时出现的列表)。

    如果你用过真实的WP7设备,你很可能会发现所有的游戏都出现在游戏中心(Games Hub)中。要做到这一点有一个很简单的方法,但你在模拟器中操作时你的应用程序好像“消失”了。记住你只能在程序确实是一个游戏时才能这么做。如果你没有说实话那么很有可能会被App Hub拒绝。

还记得第1日吗?

    在这个系列的第1日中,我讲解了一个Silverlight for Windows Phone应用程序中的每一个文件。想要做出一些小改变,我们所需的就是打开WMAppManifest.xml文档。在Visual Studio 2010的解决方案管理器中可以找到它。它在属性文件夹中。

    在此文件内,你可以找到关于应用程序的大量元数据。像应用程序图标,应用程序名以及需要加载的默认页面等内容的名称/路径信息。

    另外,更改DefaultTask的NavigationPage属性是一种使手动测试UI更快捷的方法。在那个节点中更改页面的名称,你的应用程序就会加载另一个页面。下面是例子:

<Tasks>
    
<DefaultTask Name ="_default" NavigationPage="ProductPage.xaml?id=42"/>
</Tasks>

好了,回到手边的事……让我们的应用程序出现在游戏中心而不是像电话中的其他应用程序一样。要做到这点,我们需要修改App节点的Genre属性。下面是默认的样子(我略微调整了Genre的顺序):

代码
<App xmlns="" Genre="apps.normal" ProductID="{8743bc4b-a909-4512-aab9-8633d93a5b04}" Title="Day22_AppsVsGames" RuntimeType="Silverlight" Version="1.0.0.0" Author="Jeff Blankenburg" Description="An amazing demo on how to change your app's location." Publisher="Blankensoft">

你可以看到Genre的默认值是“apps.normal”。将它改为“apps.games”然后你会看到你的程序从模拟器中消失了(它并没有真正消失,只是你在模拟器中看不到游戏中心而已)。下面是我修改后的例子:

代码
<App xmlns="" Genre="apps.games" ProductID="{8743bc4b-a909-4512-aab9-8633d93a5b04}" Title="Day22_AppsVsGames" RuntimeType="Silverlight" Version="1.0.0.0" Author="Jeff Blankenburg" Description="An amazing demo on how to change your app's location." Publisher="Blankensoft">

如果你有机会将你的程序部署到真实设备中,就会在游戏中心里看到你的游戏。在美国,这意味着你在11月8号就可以去尝试了。如果你在新西兰,那么现在你已经可以得到一部真机了。

如果想做到这点,你要确保已经在App Hub中注册了。只有在你注册的了开发人员账户后才能将你的代码放到你自己的手机中。

下载示例代码

这个例子和我上面写的内容相比没有什么更多的内容,但你还是可以把它下载下来。

原文地址:http://www.jeffblankenburg.com/post/31-Days-of-Windows-Phone-7c-Day-22-Apps-vs-Games.aspx

如果大家喜欢我的文章,请点击“推荐”,谢谢!
 

posted @ 2010-12-23 19:46  YinBa  阅读(1988)  评论(0编辑  收藏  举报