第二个 Android 11 开发者预览版现已推出,快来测试并分享您的反馈吧

实现促销活动

利用促销活动或促销代码,您可以向一定数量的用户免费提供一次性商品或订阅试用服务。用户在您的应用或 Google Play 商店应用中输入促销代码,即可免费获享相应商品或订阅试用服务。您可以充分发挥创意,使用促销代码以多种方式来吸引用户,这些方式包括:

  • 您可以在活动中分发带促销代码的卡片,用户输入促销代码即可解锁一件特殊的游戏内商品。
  • 您可以向员工提供代码,以便他们与亲朋好友分享。
  • 您可以向在特定时间段内购买您应用的用户发送促销代码。

关于订阅,请注意以下几点:

  • 用户可凭促销代码体验免费试订服务(而非免费订阅)。免费试订会在免费试订期结束时自动续订为付费订阅。
  • 促销活动不会延长其他免费试订期。如果一项订阅无需促销代码即可开始免费试订,则促销活动会覆盖最初的免费试订期限。
  • 只有新订阅者能够使用自定义代码。过去购买过订阅的用户不符合使用自定义代码的条件。
  • 任何订阅者均可使用一次性代码。例如,过去已购买过订阅的用户仍可通过一次性促销代码免费试订。

您可以通过 Google Play 管理中心分配促销代码。要创建促销代码,请参阅创建促销活动

兑换促销代码

用户可以通过以下方式之一兑换促销代码:

  • 在 Google Play 商店应用中手动输入代码。
  • 在 Google Play 购买屏幕中,点击付款方式旁边的向下箭头,然后点击兑换链接。

图 1 显示了带有向下箭头的购买屏幕。图 2 显示了兑换链接。图 3 显示了用户输入促销代码的屏幕。

图 1. Google Play 商品兑换对话框。
图 2. 显示兑换按钮的付款对话框。
图 3. 促销代码屏幕。

生成促销代码网址

兑换促销代码时,用户可以在 Google Play 商店中手动输入促销代码。或者,您也可以生成一个网址,方便用户通过该网址转到 Google Play 商店并自动填写输入代码字段。促销代码网址采用以下格式:

    https://play.google.com/redeem?code=promo_code
    

图 4 显示了 Google Play 应用的“兑换代码”对话框:

图 4. Google Play 应用的兑换代码对话框。

用户按下兑换按钮后,如果安装了应用的最新版本,Google Play 商店会提示用户打开应用。否则,Google Play 商店会提示用户更新或下载应用。

在您的应用中支持促销代码

您还必须在应用内做出更改,以识别和处理促销代码。您的应用每次启动或恢复时,都必须调用 queryPurchases() 方法。此方法将返回当前未消耗的所有购买商品,包括用户通过兑换促销代码发起的购买交易。最简单的方式是在您 Activity 的 onResume() 方法中调用 queryPurchases(),因为该回调会在 Activity 创建和取消暂停时触发。在 onStart()onResume() 中调用 queryPurchases() 可确保您的应用了解用户在应用未运行期间可能进行的所有购买和兑换活动。此外,如果用户在应用运行时发起购买交易,但应用由于某种原因未收到该交易,则当该 Activity 下一次恢复并调用 queryPurchases() 时,应用仍会收到有关该交易的信息。

您的 Activity 的 onPurchasesUpdated() 方法会收到一个响应 Intent,确定何时完成了购买交易。不过,如果购买和消耗工作流程尚未结束,您的应用应该仍在 onStart()onResume() 中调用 queryPurchases()。例如,如果用户成功兑换了促销代码,但您的应用在相应商品被消耗之前崩溃,那么应用在下次启动并调用 queryPurchases() 时,仍会收到有关该购买交易的信息。

您的应用还应支持这样一种情形,那就是用户在应用运行时通过 Play 商店应用兑换促销代码。应用可以通过 onPurchasesUpdated() 监听器了解兑换的相关信息。