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