Guide.IsTrialMode是否适用于Windows 8商店应用程序的MonoGame?

时间:2013-05-18 18:52:37

标签: c# windows-8 windows-store-apps monogame

我一直在使用XNA为xbox和windows phone 7制作游戏。现在我想使用MonoGame创建一个 metro Windows 8商店应用。

我成功地完成了所有的工作,并使其正常运行,但我遇到Guide.IsTrialMode的问题。

我有单独的逻辑,取决于游戏是否处于试用模式,哪个适用于其他平台,但是当我在本地计算机上测试我的应用程序时,或者在模拟器中它总是认为我没有购买游戏。我担心的是,当它在应用程序商店中并且人们实际购买它时,逻辑不会改变。

TL; DR:对于Windows 8商店应用,Guide.IsTrialMode是否适用于MonoGame,我该如何测试?

1 个答案:

答案 0 :(得分:3)

编辑:在DEBUG中,你可以设置Guide.SimulateTrialMode以便测试这种或那种方式。


以下是有关Windows 8商店应用程序中试用模式的信息:

  

Create a trial version of your app

     

LicenseInformation class

基本上,它使用bool标志licenseInformation.IsTrial。如果您再深入研究MonoGame source code on GitHub,我们可以看到他们如何实施检查:

#if WINDOWS_STOREAPP
    var licenseInformation = CurrentApp.LicenseInformation;
    ...
    isTrialMode = !licenseInformation.IsActive || licenseInformation.IsTrial;
#endif

因此,您的licenseInformation似乎未设置为活动状态,或者如果您遇到测试问题则设置为试用版。第一个链接有关于如何测试它的信息,但我不知道如何将其扩展到MonoGame:

  

现在,使用对许可证服务器的模拟调用来测试您的应用程序。在JavaScript,C#,Visual Basic或Visual C ++中,在应用程序的初始化代码中用CurrentAppSimulator替换对CurrentApp的引用。   CurrentAppSimulator从名为“WindowsStoreProxy.xml”的XML文件中获取特定于测试的许可信息,该文件位于\ Microsoft \ Windows Store \ ApiData中。如果此路径和文件不存在,则必须在安装期间或运行时创建它们。如果您尝试访问CurrentAppSimulator.LicenseInformation属性而该特定位置没有WindowsStoreProxy.xml,则会出现错误。

我想在最糟糕的情况下,您可以自己构建MonoGame,将CurrentApp更改为CurrentAppSimulator

相关问题