You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MSIX CLI中StoreContext.GetAppLicenseAsync()误判有效订阅为无效

问题:Microsoft Store订阅附加组件许可证检查错误返回false

我正在用C#构建一个WinRT CLI包装器,用于检查用户是否拥有有效的Microsoft Store订阅附加组件。该CLI会被Electron + React.js应用通过命令行参数调用,最终根据许可证状态返回true或false。

具体问题

即便登录用户确实拥有该附加组件的有效订阅,执行CheckSubscription <AddonId>命令时仍错误返回false。

代码片段

private static async Task HandleCheckSubscriptionCommand(string[] args)
{
    string addonId = args[1];
    var context = StoreContext.GetDefault();
    var license = await context.GetAppLicenseAsync();

    foreach (var kvp in license.AddOnLicenses)
    {
        var addOnLicense = kvp.Value;
        if (addOnLicense.SkuStoreId.Equals(addonId, StringComparison.OrdinalIgnoreCase))
        {
            bool isValid = addOnLicense.IsActive && addOnLicense.ExpirationDate > DateTimeOffset.UtcNow;
            Console.WriteLine(isValid ? "true" : "false");
            return;
        }
    }

    Console.WriteLine("false");
}

疑问

为什么用户已通过商店购买订阅,GetAppLicenseAsync()却返回订阅许可证无效或缺失?

已完成的操作

  • MSIX打包的CLI应用(支持Windows 10+),已被应用成功调用
  • 已发布至Microsoft Store(测试后已下架)
  • 使用StoreContext.GetAppLicenseAsync()方法
  • 订阅附加组件已发布且可测试
  • 附加组件ID可通过API正确解析

内容的提问来源于stack exchange,提问作者FeedFall8

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 22:12:43