我们已将免费的 UWP 应用发布到 Microsoft Store,其中包含非消耗性升级插件。由于新的订阅计费模型是 introduced对于最近的公众观众,我们计划通过在下一个版本中添加订阅计划来利用它。
我们还想在我们的后端查看和管理用户拥有的附加组件,并且有相关的 documentation做到这一点。我们密切关注它,但最终 — 在尝试 get 时例如,一个用户的订阅——我们总是得到一个空响应:{ "items": [] }
.
这是我们一步一步简要地做的事情:
StoreContext.GetCustomerCollectionsIdAsync
代表我们的测试 Microsoft 帐户为收集和购买 API 创建 Microsoft Store ID key 和 StoreContext.GetCustomerPurchaseIdAsync
分别来自我们应用程序中的客户端代码。为了生成每个 key ,我们使用了步骤 3 中对应的 AAD token 。所以我们得到
200 "OK"
响应,但列表始终为 空 这非常令人失望,实际上对我们来说是一个主要的阻塞问题。我们还可以通过“订单历史记录”确认我们上述测试 Microsoft 帐户拥有至少一个持久附加组件和一个订阅。调用
StoreContext.GetUserCollectionAsync
可以检查相同的结果或 StoreContext.GetAppLicenseAsync
客户端应用程序中的 API — 确实有一种非消耗性产品和一种订阅。我 posted官方论坛上有同样的问题,但不确定我们是否会很快得到答复,所以决定也在这里发布。请注意,similar question论坛上也有贴,不过从帖子里看不清楚是否解决了。
有没有人设法从他们的后端服务获得用户购买?我们将不胜感激任何指导,这也可以使它对我们有用。
更新(2018.08.29):
所以我们在这个问题上取得了一些进展。我们创建了新的 非免费 (0.99 美元)订阅插件,购买它并为用户请求订阅。令人惊讶的是,响应中出现了一个新项目!
值得一提的是同一个用户已经拥有有几个免费订阅,但没有一个在回复列表中。而且我从未在文档中看到任何关于免费订阅限制的提及,说它们不会包含在退回的项目中。
无论如何,订阅问题已部分解决,现在我们无法获得任何 的信息非消耗品耐用带有“查询产品”API 的附加组件,无论其价格等级如何——这也是一个主要问题,因此需要进一步调查。
最佳答案
最后似乎我们解决了这个问题!
非消耗性耐用产品和订阅的场景略有不同,但它们都与附加属性中关于个人数据收集的新要求问题有关,如下所示:
以下是您需要做的:
好的,现在很好,但我就是不明白为什么微软没有在文档中直接提到这些要求,导致很多天都在沮丧中迷失……
关于uwp - 对 Microsoft Store API 的请求始终返回空的产品/订阅列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51968616/