目前,App Store没有明确规定哪些内购项目的退款申请会被100%拒绝。但是,开发者可以通过以下几种方式来降低退款申请的风险:
-
提供足够的应用与内购项目信息,让用户了解清楚购买的内容与效果。
-
在内购项目按钮附近加入星号或提示语,让用户明确知道该项目无法退款。
-
对内购项目进行无法退款或少退款的设置,具体可参考Apple官方文档:
https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Subscriptions.html#//apple_ref/doc/uid/TP40008267-CH7-SW12
- 若用户反馈无法成功使用内购项目,开发者可以主动为用户提供相关支持或解决方案,避免退款申请出现或减少退款申请的发生。
Code示例:
/开发者可在购买后调用此方法,判断内购项目是否能退款/
- (BOOL) isRefundableProduct: (SKProduct*) product {
if ([product.productIdentifier isEqualToString:@"com.example.myproduct.norefund"]) {
/此内购项目不可退款/
return NO;
}
/内购项目可退款/
return YES;
}
/开发者可在用户点击完成内购后调用此方法,如果用户的内购项目按规定不可退款,则直接确认购买/
- (void) completeTransaction: (SKPaymentTransaction*) transaction {
if ([self isRefundableProduct: transaction.payment.product]) {
/此内购项目可退款,需提交内购单据审核/
[[SKPaymentQueue defaultQueue] finishTransaction: transaction];
} else {
/*此内购