Windows phone 7 Windows Phone应用程序运行的是完整版而不是试用版。

Windows phone 7 Windows Phone应用程序运行的是完整版而不是试用版。,windows-phone-7,Windows Phone 7,我在我的WP7应用程序中添加了一个试用版,但当我以发布模式在windows phone设备上部署该应用程序时,它会运行该应用程序的完整版本,而不是试用版。所以我担心当我提交我的应用程序时,如果人们不用购买就可以使用我的应用程序的完整版本会怎么样。或者它可能是在通过这种方式提交应用程序或安装到手机之前应该是什么样子,但我找不到任何关于它的信息。这是我的代码示例 在App.xaml中,我将LicenceInformation.IsTrial设置为用于缓存的静态bool变量 public static

我在我的WP7应用程序中添加了一个试用版,但当我以发布模式在windows phone设备上部署该应用程序时,它会运行该应用程序的完整版本,而不是试用版。所以我担心当我提交我的应用程序时,如果人们不用购买就可以使用我的应用程序的完整版本会怎么样。或者它可能是在通过这种方式提交应用程序或安装到手机之前应该是什么样子,但我找不到任何关于它的信息。这是我的代码示例

在App.xaml中,我将LicenceInformation.IsTrial设置为用于缓存的静态bool变量

public static bool IsTrial
{
  get;
  private set;
}

private void DetermineIsTrial()
{
  #if TRIAL
    IsTrial = true;
  #else
    var license = new Microsoft.Phone.Marketplace.LicenseInformation();
    IsTrial = license.IsTrial();
  #endif
}

private void Application_Launching(object sender, LaunchingEventArgs e)
{
    DetermineIsTrial();
}

private void Application_Activated(object sender, ActivatedEventArgs e)
{
    DetermineIsTrial();
}
然后我通过这种方式检查它是试用版还是完整版

if(App.IsTrial)
{
  //Trial Version
} 
else
{
  //Full Version
}
所以我已经完成了所有的试用版和完整版测试,它已经准备好提交了,但是当在发布模式下将它部署到windows phone设备时,它不应该运行试用版而不是完整版吗?任何帮助都将不胜感激


关于。

这取决于,您是否在发布配置中定义了
TRIAL
编译变量

如果是这样,您需要将其删除

更新

这是预期的行为,根据:

在Windows Phone Emulator中调试或在解锁设备上测试时,应用程序必须模拟试用模式。在这些通常称为调试模式的情况下,IsTrial方法总是返回false


这取决于您是否在发布配置中定义了
TRIAL
编译变量

如果是这样,您需要将其删除

更新

这是预期的行为,根据:

在Windows Phone Emulator中调试或在解锁设备上测试时,应用程序必须模拟试用模式。在这些通常称为调试模式的情况下,IsTrial方法总是返回false


看起来这正符合预期-您的应用程序尚未上市,因此
IsTrial
标志默认为false

只有在将应用程序发布到Windows Phone Marketplace后,才可以使用该应用程序的真实许可证信息

尝试一个空白的Windows Phone项目,只需在主页上添加以下代码,也会出现
false

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
    {
        var license = new Microsoft.Phone.Marketplace.LicenseInformation();
        bool isT = license.IsTrial();
    }

看起来这正符合预期-您的应用程序尚未上市,因此
IsTrial
标志默认为false

只有在将应用程序发布到Windows Phone Marketplace后,才可以使用该应用程序的真实许可证信息

尝试一个空白的Windows Phone项目,只需在主页上添加以下代码,也会出现
false

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
    {
        var license = new Microsoft.Phone.Marketplace.LicenseInformation();
        bool isT = license.IsTrial();
    }

不,我做了一个新的配置并添加了试用版以测试试用版。发布模式配置不包含试用版。好的,然后它解释了我的问题。谢谢你的帮助。不,我做了一个新的配置并添加了试用版来测试试用版。发布模式配置不包含试用版。好的,然后它解释了我的问题。谢谢你的帮助。这也是正确的答案,但我不能将两个不同的答案标记为正确答案。很抱歉。谢谢你的帮助。这也是正确的答案,但我不能将两个不同的答案标记为正确答案。很抱歉。谢谢你的帮助。