集成内购
项目中有虚拟服务类消费,之前用的第三方支付,这次被连拒4次后,决定接入内购。先说下之前做的尝试:
一旦被发现就是2.3.1,封号警告⚠️
- 跳转到一个网页支付
- 增加一个商城页面,购买实物,赠送积分、钻石之类的虚拟货币,再用虚拟货币支付虚拟服务类消费。
主要流程
项目 导入storekit 或者引入第三方,XYIAPKit比较好用
1. APP Store Connect 工作
- APP store Connect 协议、税务和银行 填写对应信息。
- 用户和访问内 添加沙盒测试账号,用于内购测试。
邮箱可以随便填写,密码大小写混写。地区就写中国。 测试时将测试机上的Apple id退出,不用登入沙盒测试账号。 注意,审核时 需要提交沙盒测试账号。
- 在我的APP/功能中添加对应APP内购买项目,填写对应的产品ID。
2. 项目内流程
这里就讲导入XYIAPKit的使用流程了
- 选择对应产品 提交至App Store,得到返回的电子凭证交易信息
- (void)addPayment:(NSString*)productIdentifier
success:(void (^)(SKPaymentTransaction *transaction))successBlock
failure:(void (^)(SKPaymentTransaction *transaction, NSError *error))failureBlock;
- 将上一步得到的电子交易凭证提交至后台,后台会拿去与App Store做验证,得到验证结果后,返回结果。 成功后交付产品,购买完成。
创建一个单例,遵循XYStoreReceiptVerifier,单例调用
- (void)verifyTransaction:(SKPaymentTransaction*)transaction
success:(void (^)(void))successBlock
failure:(void (^)(NSError *error))failureBlock;
- 处理掉单问题,XYIAPKit内有对应方法,就不再做赘述
网友评论