【问题标题】:In-app purchase promo codes breaks remote server verification?应用内购买促销代码会破坏远程服务器验证?
【发布时间】:2016-05-24 16:40:38
【问题描述】:

为应用内购买发布促销代码似乎会阻止应用(再次)执行远程服务器购买验证!

promo code 用于应用内购买(PURCHASES_UPDATED 广播)时,它将完全绕过购买流程,因此应用没有机会提供用于远程验证的"developerPayload"

稍后当应用调用getPurchases() 来获取/验证所有者产品时,用于促销购买的purchase data 当然不会包含"developerPayload",但也不会包含"orderId",这对于使用远程验证也很有用Google Play Developer API.

应用应如何验证使用促销代码进行的应用内购买?

允许用户通过 Google Play 商店应用/网站兑换促销代码,从而绕过购买流程,这似乎是一个不应该发生的重大疏忽。

问题报告:

类似帖子:

【问题讨论】:

  • 简单的解决方法,如果我理解您的要求:让用户卸载您的应用,将促销代码放在 Play 商店的兑换部分,这将重新安装具有该功能的应用。我假设您要向新用户提供促销代码,所以这将是一个边缘案例问题。

标签: android google-play in-app-billing promotion-code


【解决方案1】:

这确实是 Google 方面已知的安全问题,因此我将建议一种解决方法。

连同促销代码一起向用户提供由您的服务器生成的服务器 ID,在获得促销购买时验证服务器 ID 并接受一次购买。

当从市场使用时,发送带有推荐人的 id。使用 from app 时有自己的逻辑来提供服务器 ID。

底线没有其他解决方案,但有一些如何识别具有某种 id 的用户。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-15
    • 2015-01-28
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多