uwp – 对Microsoft Store API的请求始终返回空的产品/订阅列表

前端之家收集整理的这篇文章主要介绍了uwp – 对Microsoft Store API的请求始终返回空的产品/订阅列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们将免费的UWP应用程序发布到Microsoft Store,并附带非耗材升级附加组件.由于最近新的订阅结算模式为公众提供了 introduced,我们计划通过在下一版本中添加订阅计划来利用它.

我们还希望在我们的后端查看和管理用户自己的附加组件,并且有相关的documentation就可以做到这一点.我们密切关注它,但最终 – 在尝试为用户订阅get时 – 我们总是得到一个空响应:{“items”:[]}.

以下是我们一步一步简要介绍的内容

>在Azure Active Directory中创建新的应用程序注册.
>通过合作伙伴仪表板与我们的应用程序关联应用程序注册的标识符.
>为以下受众URI创建了三个Azure Active Directory(AAD)令牌:

> https://onestore.microsoft.com(在步骤5中用于授权)
> https://onestore.microsoft.com/b2b/keys/create/collections(在步骤4中使用)
> https://onestore.microsoft.com/b2b/keys/create/purchase(在步骤4中使用)

>通过分别从我们的应用程序中的客户端代码调用StoreContext.GetCustomerCollectionsIdAsync和StoreContext.GetCustomerPurchaseIdAsync,代表我们的测试Microsoft帐户为Collection和Purchase API创建Microsoft Store ID密钥.为了生成每个密钥,我们在步骤3中使用了相应的AAD令牌.
>请求用户的产品/订阅(使用步骤3中的授权AAD令牌和步骤4中的Store ID键).

所以我们得到了200个“OK”响应,但是列表总是空的,这非常令人失望,实际上是我们现在的主要阻塞问题.

我们还可以通过“订单历史记录”确认我们上述测试Microsoft帐户至少拥有一个持久插件和一个订阅.可以通过在客户端应用程序中调用StoreContext.GetUserCollectionAsync或StoreContext.GetAppLicenseAsync API来检查相同的结果 – 确实有一个非消耗品和一个订阅.

我在posted官方论坛上提出同样的问题,但不确定我们是否会尽快得到答复,所以决定在这里发布.请注意,similar question也发布在论坛上,但是从线程中是否已经解决它并不是很清楚.

有没有人设法让用户从他们的后端服务购买?我们将感谢任何指导,也可以使它为我们工作.

更新(2018.08.29):

所以我们在这个问题上取得了一些进展.我们创建了新的非免费(0.99美元)订阅附加组件,购买它并请求用户订阅.令人惊讶的是,响应中出现了一个新项目!

值得一提的是,同一个用户已经拥有了几个免费的订阅,但没有一个在响应列表中.我从未在文档中看到有关免费订阅的任何限制,并说它们不会包含在退回的项目中.

无论如何,部分解决订阅的问题,现在我们无法获得有关“查询产品”API的任何非消耗性耐用附加组件的信息,无论其价格等级 – 这也是一个主要问题,因此进一步调查是需要.

@H_502_35@ 最后我们似乎解决了这个问题!

非消费性耐用产品和订阅的情况略有不同,但它们都与有关附加属性中个人数据收集的新问题相关,如下所示:

以下是您需要做的事情:

>如果您有很久以前提交过的非消耗性耐用附件,则需要创建新的提交,选择上述问题的任何答案并提交给认证.一旦您的产品的更新版本在商店中,尝试请求用户收集产品 – 它现在应该包含在响应中.
>如果您创建订阅加载项,则看起来您必须对问题选择“是”并提供隐私策略URL,否则它将永远不会出现在对“用户订阅”的响应中.另请注意,根据我们的经验,与非消耗性耐用产品相比,生效需要更长时间 – 认证完成后最多24小时左右.

好的,现在没关系,但是我无法理解为什么微软直接在文档中没有提到这些要求,导致很多天失败…

猜你在找的Windows相关文章