有没有办法检查用户是否已经使用过他的免费试用版?
当我查询sub时,我得到了下一个数据:
[
SkuDetails:{
"productId":"...",
"type":"subs",
"price":"...",
"price_amount_micros":0000,
"price_currency_code":"USD",
"subscriptionPeriod":"P1M",
"freeTrialPeriod":"P1W1D",
"title":"...",
"description":"..."
}
]
请问这个领域 " freeTrialPeriod":" P1W1D"当用户使用免费试用版时消失? 或者可能有其他方式来了解它?
我需要展示"免费"而不是订阅价格,然后在用户使用免费试用后显示实际价格
答案 0 :(得分:1)
在文档中,Google 明确强调 Google Play 有责任向用户展示他们已经使用了免费试用版。
<块引用>注意:SkuDetails.getFreeTrialPeriod() 返回免费试用期 在 Google Play Console 中配置。用户可能已经 使用了免费试用版。在这种情况下,Google Play 会与用户沟通 他们没有资格再次免费试用。
这意味着您可以始终向用户显示(免费 3 天,然后是价格/时间),或者您需要手动处理(使用共享首选项、您自己的服务器、使用异步查询购买历史来保持共享状态在重新安装的情况下)
答案 1 :(得分:-2)
根据官方documentation:
freeTrialPeriod - 在Google Play控制台中配置的试用期,以ISO 8601格式指定。例如,P7D相当于七天。要了解有关免费试用资格的详情,请参阅应用内订阅。
注意:仅针对已配置试用期的订阅返回。
因此,每次获得SkuDetails
时都会返回。
但是In-app Subscriptions
的文档说:
试用期在您设置的时间段内运行,然后自动转换为根据订阅的结算时间间隔和价格管理的完整订阅。
您不需要管理它,一切都会自动生效。