我有一个Windows Phone 8应用程序和一些额外的功能,只能与完整版一起使用。
因此用户点击按钮
if ((Application.Current as App).IsTrial)
{
Buy()
}
else
{
//full feature
}
private void Buy()
{
MarketplaceDetailTask marketplaceDetailTask = new MarketplaceDetailTask();
marketplaceDetailTask.ContentType = MarketplaceContentType.Applications;
marketplaceDetailTask.ContentIdentifier = "82a23635-5bd9-df11-a844-00237de2db9e";
marketplaceDetailTask.Show();
}
的App.xaml
/// <summary>
/// The LicenseInformation class enables an application to determine
/// if it is running under a trial license.
/// </summary>
private static LicenseInformation _licenseInfo = new LicenseInformation();
/// <summary>
/// This property is used to cache the license information while the application is running.
/// The application uses the property whenever the current license information needs to be checked.
/// </summary>
private static bool _isTrial = true;
public bool IsTrial
{
get
{
return _isTrial;
}
}
/// <summary>
/// Check the current license information for this application
/// </summary>
private void CheckLicense()
{
_isTrial = _licenseInfo.IsTrial();
}
答案 0 :(得分:3)
关于你的第二个问题。
是的,Microsoft根据用户操作设置 LicenseInformation.IsTrial 值。如果用户购买应用,则 IsTrial 设置为false。
您应该在提交到商店之前测试所有购买方案。您使用CurrentAppSimulator class进行测试。它与本地XML文件一起使用。您可以使用每个方案的模拟许可证信息填充XML文件。
关于问题#3,您不需要指定GUID,如果您将ContentIdentifier留空,操作系统将为您查找您的应用程序GUID。