我应该发生的事情是,它将通过 SKPaymentQueue 事务观察员传递 . 然而,

  • 这仅在应用程序启动时发生 . 我的应用程序是垂直市场风格的应用程序,可能会运行数小时或数天,因此在启动时检查是不够的 .

  • 事务观察者传递没有't seem to be reliable. In testing I'已经订阅了应该已更新,但即使重新启动后也没有向事务观察者传递新信息 .

但当然,通过Apple重新验证收据,也可以按需获得更新信息 . 鉴于上述两个问题,我认为我需要定期运行计时器

  • 检查订阅是否应更新"soon",即将来某个TBD期间(可能在第二天内) .

  • 如果是这样,尝试通过重新验证收据从Apple获取更新信息 .

别人怎么处理这个?计时器方法似乎很荒谬,但我还没有提出更好的方法 .