美文网首页
WWDC2019年内购新特性

WWDC2019年内购新特性

作者: 横穿撒哈拉的骆驼 | 来源:发表于2019-10-21 21:04 被阅读0次

    看完了苹果在WWDC上关于内购新特性的两个视频, 写一篇笔记总结一下

    本文主要是介绍 Session302Session305 里面的新特性

    What's new in StoreKit

    1.SKStorefront

    这个东西是标识用户的应用商店所设置的国家或者地区, 目前只有一个countyCode属性. 是一个ISO 三位国家代码

    苹果举了一个例子, 购买商品的时候主动获取SKStorefront, 然后确认这个商品是否在当前国家进行提供, 但是感觉它的前提是客户端根据苹果返回的商品进行展示, 而不是根据客户端进行服务器返回的列表进行展示. 感觉这个功能有点鸡肋

    2. APP Pre-Orders (应用预定)

    这个功能要求iOS11.2 watchOS6.0以上系统

    开启预定的app,在上架之前可以上线产品介绍页, 用户可以提前购买或者免费获取该应用. 目测这个比较适合应用于游戏, 现在在App Store->游戏->现可预订的分类, 里面就是可预定的游戏. 那如何标识这个用户是否是提前预定的? 在未来苹果会在收据里提供一个字段标识这个用户(但是这个字段视频里他没说)

    详情介绍可以看看这个链接

    3. Server-to-server Notification

    感觉这个是这个视频的重头戏

    Server-to-server 主要是订阅发生变更的时候苹果通过这个请求告诉公司服务器. 比如用户取消订阅, 变更订阅都会受到消息的, 这个东西对订阅来说很重要

    3.1 Unified Receipt

    这个是Server-to-server 新引入的东西, 可以看出苹果对Server-to-Server很重视, 在秋季的时候通过server-to-server会收到一个新字段unified_receipt, 这里面包含你期待从传统收据中获取的一切信息, 然后在最新收据中latest_receiptlatest_receipt_info不在需要(这个最新收据是苹果给客户端的?). 这个有个重点是这个凭证你要在服务器存储, 苹果并不会保存在app上

    看看unified_receipt包含什么东西

    1. latest_receipt
    2. latest_receipt_info
    3. pending_renewal_info
    4. status
    5. environment

    和苹果下发给客户端的凭证一样

    3.2 Notification Types

    原来是有四种

    通知类型 定义
    INITIAL_BUY 首次订阅
    INTERACTIVE_RENEWAL 用户主动回复订阅
    DID_CHANGE_RENEWAL_PREF 用户修改了订阅计划
    CANCEL 产生了退款

    这次新增了四种

    通知类型 定义
    DID_CHANGE_RENEWAL_STATUS 变更续订状态
    DID_FAIL_TO_RENEW 续订失败
    DID_RECOVER 续订失败之后再次成功续订
    PRICE_INCREASE_CONSENT 涨价同意

    这里面有个很存疑的地方, DID_CHANGE_RENEWAL_STATUS原来就有, 不知道为啥这里要说是新增的

    强烈建议开发IAP支付的同学去看看视频关于Notification Types讲解

    3.3 Handling Notifications

    这里主要是根据上面的通知类型, 进行了一些举例
    比如用户升级收到的server-to-server通知是:INTERACTIVE_RENEWAL+CANCEL
    用户流失一段时间重新订阅只有:INTERACTIVE_RENEWAL

    里面重点听了一下 DID_FAIL_TO_RENEW, 这个是因为用户卡里没钱导致扣款失败, 这里涉及到一个账单宽限期的功能了, 在这个通知里面有个字段is_in_billing_retry_period, 告诉我们苹果是否在积极尝试扣款.如果后续扣款成功, 会发送DID_RECOVER的通知. 这个DID_RECOVER以后会取代RENEWAL通知类型(会给一段时间缓冲期).

    目测这个DID_FAIL_TO_RENEW会很有用, 因为是用户的银行卡扣款失败, 但是可能用户还不知道, 如果服务器收到了这个通知, 然后在告诉客户端, 客户端可以给用户弹窗提示他, 您的续订扣款失败,请检查银行卡. 这样就不会让用户无意流失了

    4.Subscription Lifecycle

    主要是讲了一下目前苹果订阅的流程,包括首次购买, 重新续订, 升级, 还有续费重试. 夸了下加了续费重试这个功能之后无意识流失变少了

    账单缓冲期

    这个主要是为了减少无意识流失订阅
    这个功能有个开关控制.需要在ITunes connect后台打开这个开关, 才能享受这个功能, 如果开启的这个开关, 在凭证中拿到in-billing-retry-period字段, 表示是否在尝试扣款期,, 具体可以看看这篇文章

    这个看他的描述, 用户在5.1号买了一个会员, 但是在6.1号扣款的时候, 卡里没钱了, 导致扣款失败, 如果我开通了这个功能, 苹果会持续16天进行扣款, 如果在6.6号扣款成功了, 那么下次扣款还是在7.1号了,减少用户无意识流失. 这个功能的开发量主要在API,他需要监听苹果的通知

    image

    5. 订阅优惠

    这个订阅优惠苹果已经在iOS12.2 就出了, 这里是介绍了一下订阅优惠的最佳实践, 里面他举例了如何实现订阅优惠, 以及订阅优惠可以干什么,感觉比较新的东西就是在最后介绍的在ITunes Connect后台新增了两个关于续订统计表格, 其他的很早就知道怎么用, 可以看看我写的这篇推介促销和订阅优惠

    相关文章

      网友评论

          本文标题:WWDC2019年内购新特性

          本文链接:https://www.haomeiwen.com/subject/uauxvctx.html