好吧,我已经阅读了很多关于"开发人员有效负载"但我不清楚,对于#34;开发者有效载荷"用于。所以我试图将此作为空白使用:
public void onUpgradeAppButtonClicked(String SKU) {
Log.d(TAG,"Upgrade button clicked; launching purchase flow for upgrade.");
/*
* TODO: for security, generate your payload here for verification. See
* the comments on verifyDeveloperPayload() for more info. Since this is
* a SAMPLE, we just use an empty string, but on a production app you
* should carefully generate this.
*/
String payload = "";
mHelper.launchPurchaseFlow(this, SKU, RC_REQUEST,
mPurchaseFinishedListener, payload);
}
而且:
boolean verifyDeveloperPayload(Purchase p) {
String payload = p.getDeveloperPayload();
return true;
}
所以我拍了一张照片。适用于3种情况。我想了解条件
后会发生什么
答案 0 :(得分:5)
是的,在场景2中最可能出现这种情况。
但有多少用户使用方案2?我想这不会很多。大多数人不共享他们的设备。
但是如果这个有效负载字符串留空,我正在考虑另一种破解可能性。它很容易被打破。
唯一令我生气的是这个东西应该在谷歌API方面。 Google的工作是验证并确定谁购买了该商品。为什么我们需要自己的服务器?
答案 1 :(得分:2)
您应该传入一个字符串令牌,以帮助您的应用程序识别进行购买的用户,以便您以后验证这是该用户的合法购买。
将此视为收据。如果客户进来并希望退回物品或保修单,您需要确保收据没有在家打印。使用此令牌有助于防止欺诈。
答案 2 :(得分:1)
这不是必需的,但建议。根据文档,您可以发送一个空字符串,虽然我不确定null。出于安全原因,这是可取的。例如,您可以使用有效负载来验证购买是否由您打算购买。查看结算Security Best Practices