应用内购买:坚持使用paymentWithProductIdentifiers - 已弃用

时间:2011-11-30 20:49:27

标签: iphone ios ipad in-app-purchase

我很难设置我的应用内购买。

我无法做到这一点:

SKPayment *paymentRequest = [SKPayment paymentWithProduct: @"co.za.nideo.100shotsbuybeer"];

我是从

获得的
SKPayment *paymentRequest = [SKPayment paymentWithProductIdentifiers: @"co.za.nideo.100shotsbuybeer"];

但这似乎已被弃用。如何才能使第一段代码生效?

似乎是一个SKProduct,但我不知道如何创建/ init这样的对象。

1 个答案:

答案 0 :(得分:10)

根据StoreKit文档和[1],您必须:

  1. 使用您的商品标识符(SKProductsRequest
  2. 创建initWithProductIdentifiers:
  3. 将自己设为delegate
  4. 将此请求发送至Apple(start方法)
  5. 响应将调用包含productsRequest:didReceiveResponse:对象
  6. 的代理SKProductsResponse
  7. 您从SKProduct属性中提取products个对象并显示它们,保存对象以供进一步购买。
  8. 这似乎符合重要提示:在允许用户购买该产品之前,您必须对特定产品标识符发出产品请求。从App Store检索产品信息可确保您使用有效的产品标识符来标记可在iTunes Connect中标记的产品。来自[1]

    [1] http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/RetrievingStoreInformation/RetrievingStoreInformation.html#//apple_ref/doc/uid/TP40008267-CH2-SW1