如何在SKMutablePayment中使用requestData?

时间:2017-07-11 03:36:18

标签: ios objective-c in-app-purchase storekit

我正在使用Apple IAP。我想在使用StoreKit请求付款时添加一些额外的参数,例如用户ID,服务器ID和产品的金额:

NSDictionary* requestDataDic = @{ @"userId": userId, @"serverId": serverId, @"money": money };

NSData* requestData = [NSJSONSerialization dataWithJSONObject:requestDataDic
                                                      options:NSJSONWritingPrettyPrinted
                                                        error:nil];

SKMutablePayment *payment = [SKMutablePayment paymentWithProduct:productIdentifier];
payment.requestData = requestData;

if ([SKPaymentQueue defaultQueue]) {
    [[SKPaymentQueue defaultQueue] addPayment:payment];
}

但是,在我的服务器端验证收据后,它不会收到requestData中发送给Apple Server的信息。我误解了requestData的用法吗?

1 个答案:

答案 0 :(得分:1)

根据Apple的doc,此属性保留供将来使用,如果您使用它,则Apple将拒绝您的付款。

  

默认值为nil。如果requestData不为零,Apple App Store将拒绝您的付款。