我在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。
由于
修改
其他人在商店买了我的应用程序,不要以为他试过了试用版。对他来说一切都很好。他可以访问所有级别。我仍然处于试验阶段。
答案 0 :(得分:0)
确保您的应用与您的开发者帐户相关联。
您是否在调试模式下运行应用程序?如果它在调试模式下运行,则#if DEBUG ..
返回true!
并尝试为此制作道具方法:
private bool IsTrial()
{
var li = CurrentApp.LicenseInformation;
if (li.IsActive)
{
return li.IsTrial;
}
else
{
return true;
}
}
答案 1 :(得分:0)
我在其他计算机上试过但很好,所以我的帐户在一台计算机上出现了问题。
所以代码没问题。
我可以像纳赛尔那样更改代码并每次刷新许可证,但对我来说没有必要。
在一台计算机上仍有问题。我觉得我不会在这段代码中找到anwser。