0

我需要将此字符串方法更改为SKProduct对象,因为它在我的应用程序(ios 5)上已弃用

(注意:这是在 InAppRageIAPHelper 类上实现的)

 - (void)buyProductIdentifier2:(NSString *)productIdentifier {

        srtProduct = [productIdentifier copy];

    NSLog(@"Buying %@...", productIdentifier);

    SKPayment *payment = [SKPayment paymentWithProductIdentifier:productIdentifier];
    [[SKPaymentQueue defaultQueue] addPayment:payment];
}

然后,当您点击购买时:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    if(alertView.tag == 1)
    {
        NSString *title = [alertView buttonTitleAtIndex:buttonIndex];
        if([title isEqualToString:@"Cancel"])
        {
            if ([delegate respondsToSelector:@selector(purchaseCancelled)]) {
                [delegate purchaseCancelled];
            }
        }
        else if([title isEqualToString:@"Buy"])
        {
            [self buyProductIdentifier2:srtProduct];
        }
    }
}

有人可以解释我要改变什么吗?

4

2 回答 2

1

您可以使用此链接。它提供了您想要的示例代码。 http://www.raywenderlich.com/23266/in-app-purchases-in-ios-6-tutorial-consumables-and-receipt-validation

在 IAPHelper.m 中找到此方法 - (void)buyProduct:(SKProduct *)product {

NSLog(@"Buying %@...", product.productIdentifier);

SKPayment * payment = [SKPayment paymentWithProduct:product];
[[SKPaymentQueue defaultQueue] addPayment:payment];

}

于 2013-07-12T14:13:46.717 回答
0

快速查看文档后:看起来您必须使用产品标识符执行 SKProductsRequest 才能获取 SKProduct,然后您可以继续使用 SKPayment

于 2013-07-12T13:56:43.450 回答