版本记录
版本号 | 时间 |
---|---|
V1.0 | 2018.07.29 |
前言
大家都知道,ios虚拟商品如宝石、金币等都需要走内购,和苹果三七分成,如果这类商品不走内购那么上不去架或者上架以后被发现而被下架。最近有一个项目需要增加内购支付功能,所以最近又重新集成并整理了下,希望对大家有所帮助。感兴趣的可以参考上面几篇。
1. iOS内购IAP(一) —— 基础配置篇(一)
2. iOS内购IAP(二) —— 工程实践(一)
3. iOS内购IAP(三) —— 编程指南之关于内购(一)
4. iOS内购IAP(四) —— 编程指南之设计您的应用程序的产品(一)
5. iOS内购IAP(五) —— 编程指南之检索产品信息(一)
6. iOS内购IAP(六) —— 编程指南之请求支付(一)
7. iOS内购IAP(七) —— 编程指南之促进应用内购买(一)
8. iOS内购IAP(八) —— 编程指南之提供产品(一)
9. iOS内购IAP(九) —— 编程指南之处理订阅(一)
10. iOS内购IAP(十) —— 编程指南之恢复购买的产品(一)
Preparing for App Review - 准备App审核
完成测试后,您就可以提交应用以供审核了。 本章重点介绍了一些可帮助您完成审核流程的技巧。
Submitting Products for Review - 提交产品以供审核
首次提交应用以供审核时,您还需要提交应用内商品,以便同时进行审核。 首次提交后,您可以向应用和产品提交更新,以便彼此独立审核。
Receipts in the Test Environment - 测试环境中的收据
您的应用在开发,审核和生产过程中会运行不同的环境,如图8-1所示。
在开发期间,您运行应用程序的开发签名版本,该版本连接到开发服务器和App Store的测试环境。 在生产中,您的用户运行应用程序的生产签名版本,该版本连接到生产服务器和生产App Store。 但是,在应用程序审核期间,您的应用程序在混合生产/测试环境中运行:它的生产已签名并连接到生产服务器,但它连接到App Store的测试环境。
验证服务器上的收据时,您的服务器需要能够处理生产签名的应用程序从Apple的测试环境中获取收据。 建议的方法是让您的生产服务器始终首先针对生产App Store验证收据。 如果验证失败,并显示错误代码Sandbox receipt used in production
,请改为验证测试环境。
Implementation Checklist - 实施清单
在提交您的应用以供审核之前,请确认您已实施所有必需的行为。 确保您已实现以下核心应用内购买行为(按典型开发过程的顺序列出):
在App Store Connect中创建和配置产品。
您可以在整个过程中更改产品,但在测试任何代码之前至少需要配置一个产品。从应用程序包或您自己的服务器获取产品标识符列表。 使用
SKProductsRequest
实例将该列表发送到App Store
。使用App Store返回的
SKProduct
实例为您的应用商店实现用户界面。 在开发过程中从简单的界面开始,例如table view
或几个按钮。在开发过程中的任何有意义的位置为应用商店实现最终用户界面。通过使用
SKPaymentQueue
的addPayment
方法将SKPayment实例添加到交易队列来请求付款。实现事务队列观察器,从
paymentQueue:updatedTransactions:
方法开始。在开发过程中有意义的任何时候,在SKPaymentTransactionObserver
协议中实现其他方法。通过为将来的发布创建持续的购买记录,下载任何相关内容,最后调用SKPaymentQueue的
finishTransaction:
方法来交付购买的产品。在开发过程中,您可以首先实现此代码的简单版本 - 例如,只需在屏幕上显示Product Delivered
- 然后在开发过程中的任何有意义的位置实现真实版本。
如果您的应用程序销售非消耗品,自动续订订阅或非续订订阅,请验证您是否已实施以下恢复逻辑:
提供UI以开始恢复过程。
通过使用
SKReceiptRefreshRequest
类刷新应用收据或使用SKPaymentQueue
类的restoreCompletedTransactions
方法恢复已完成的事务来检索有关过去购买的信息。让用户重新下载内容。
如果您使用Apple托管的内容,请恢复已完成的事务并使用事务的downloads
属性来获取SKDownload
的实例。
如果您托管自己的内容,请对您的服务器进行适当的调用。
如果您的应用程序销售自动续订或非续订订阅,请验证您是否已实现以下订阅逻辑:
- 通过提供最近发布的内容(例如,最新一期的杂志)来处理新购买的订阅。
- 发布新内容时,请将其提供给用户。
- 订阅到期后,让用户续订。
如果您的应用程序销售自动续订订阅,请让App Store处理此过程。不要试图自己处理它。
如果您的应用销售非续订订阅,则您的应用负责此流程。
订阅变为非激活状态时,请停止提供新内容。更新您的界面,以便用户可以再次购买订阅,重新激活它。
实现一些系统以跟踪发布内容的时间。在恢复购买时使用此系统,以便用户可以根据订阅处于活动状态的时间段访问已付款的内容。
后记
本篇主要讲述了准备App审核,感兴趣的给个赞或者关注~~~~