即使在购买应用程序

时间:2015-09-25 18:11:29

标签: c# windows-runtime windows-store-apps windows-8.1

我在Windows商店中发布了一个应用程序,但它暂时隐藏了,所以我可以测试一下。

应用程序中有一个试用版,可让您访问某个级别。我没有时间限制。购买游戏时,您应该可以访问所有级别。但“IsTrial”总是如此。

private static LicenseInformation _licenseInformation = CurrentApp.LicenseInformation;

public static bool IsLevelEnabled(LevelViewModel level)
{
#if DEBUG
  return true;
#else
  if (_licenseInformation.IsActive)
  {
    if (_licenseInformation.IsTrial) //Problem, always true
    {
      if ([...])//some logic to check is level is enabled in Trial.
      {
        return true;
      }
      else
      {
        return false;
      }
    }
    else //Should go here when you buy the app.
    {
      return true;
    }
  }
  else
  {
    return false;
  }
#endif
}

我的代码基于https://msdn.microsoft.com/en-us/library/windows/apps/xaml/Dn532253(v=win.10).aspx

由于

修改

其他人在商店买了我的应用程序,不要以为他试过了试用版。对他来说一切都很好。他可以访问所有级别。我仍然处于试验阶段。

2 个答案:

答案 0 :(得分:0)

确保您的应用与您的开发者帐户相关联。

您是否在调试模式下运行应用程序?如果它在调试模式下运行,则#if DEBUG ..返回true!

并尝试为此制作道具方法:

private bool IsTrial()
    {
        var li = CurrentApp.LicenseInformation;
        if (li.IsActive)
        {
            return li.IsTrial;
        }
        else
        {
            return true;
        }

    }

答案 1 :(得分:0)

我在其他计算机上试过但很好,所以我的帐户在一台计算机上出现了问题。

所以代码没问题。

我可以像纳赛尔那样更改代码并每次刷新许可证,但对我来说没有必要。

在一台计算机上仍有问题。我觉得我不会在这段代码中找到anwser。