消费者InApp购买单一产品?

时间:2013-04-14 11:41:26

标签: ios xcode in-app-purchase

我已经按照Ray Wenderlichs创建了一个示例项目,并且它的工作非常完美。但我只有一个产品,我想要的是在一个按钮单击它应该购买该产品。当我谷歌几个小时我得到解决方案In-App Purchase with an IBAction / Button与我的要求完全相同。但是当我使用代码时,我对“paymentWithProductIdentifier”进行了弃用。 有没有办法使用像“com.example.product”这样的inapp购买对象进行购买?

2 个答案:

答案 0 :(得分:1)

您需要传递skproduct而不是其标识符,它只是预先请求产品并没有太大差异,因此您在付款时可以使用它。

//This is how you request the products with a list of identifiers

SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:self.productIdentifiers];
[request setDelegate:self];
[request start];

//This is the delegate method called after there is a response from apple servers

-(void) productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
    self.products = response.products;

    for (SKProduct *product in self.products)
    {
        if ([product.productIdentifier isEqualToString:MY_PRODUCT_IDENTIFIER])
        {
            self.myProduct = product;
        }
    }
}

//And this is how you do the actual payment after product is retrieved

SKPayment * payment = [SKPayment paymentWithProduct:self.myProduct];
[[SKPaymentQueue defaultQueue] addPayment:payment];

据我记得,事务部分的工作方式与教程相同,因为我经历了相同的教程。

答案 1 :(得分:0)

尝试使用MKStoreKit,它会让您的生活更轻松。