Windows Phone 8试用到期时间

时间:2013-10-29 11:23:42

标签: windows-phone-8

在WP8上有一个LicenseInformation类,用于了解应用程序是处于试用状态还是已经购买。

现在我想做的是让我的应用程序仅在试用模式下工作7天(之后到期)。

MSDN上的文档现在对这个主题有些误导,所以在阅读之后我会有这些问题。

  1. LicenseInformation.ExpirationDate对我的目的没用吗? "This API always returns 9999 – 12 – 31 (ETERNITY_FILETIME_TIME)."试用许可证本身似乎永不过期,这是正确的吗?

  2. 可以使用LicenseInformation.IsActive吗? “May return false if the license is missing, expired, or revoked.”,“IsTrial returns true even after the trial period ends. IsActive, however, will return false after the trial period ends.”如果是,我该如何设置到期日期?

  3. 谢谢!

1 个答案:

答案 0 :(得分:5)

  1. 是的,到期时间始终是DateTime.Max值。

  2. 没有。这不足以满足您的需求。

  3. 试用版API中没有任何内容可以在一定时间限制后启用到期日。您必须自己实现此功能。

    要在使用7天后实施到期,您必须执行以下操作:

    • 记录首次使用该应用的日期。
    • 随后开始检查是否仍处于试用模式以及首次使用后是否超过7天。
    • 如果这两个测试都返回true,则假设试用期已过,并在您的应用中采取适当的措施。

    您可以在隔离存储中跟踪首次使用日期/时间,但请注意,如果用户卸载然后重新安装,他们将能够再次运行试用。

    作为替代方案,您需要在自己的网络服务器上存储设备ID和首次使用日期/时间。然后,您将检查该数据,因为用户无法重置该数据 这样做的缺点是需要运行服务器并确定如果应用程序无法连接到服务器会发生什么。 (没有网络访问或服务器关闭。)

    如果你想考虑拥有多个设备的用户,事情会变得更加复杂,但这可能超出了合理需要考虑的范围。

相关问题