5

我在 IAP 购买测试中遇到了一个大问题。

我已经做了以下步骤:

  1. 创建应用 ID ( com.domainname.appname )
  2. 使用 App ID ( com.domainname.appname )创建开发配置文件
  3. 在 iTunes Connect 上创建应用程序(Bundle ID com.domainname.appname
  4. 管理 IAP。创建具有产品 ID com.testitem1、com.testitem2、com.testitem3的非消耗性产品(每个产品都有准备提交状态)

配置 XCode 项目设置

  • 捆绑标识符:com.domainname.appname

  • 代码签名身份:我在步骤 2中制作的开发配置文件

  • 部署目标:4.0

设备

iPod Touch 4gen iOS 5.1.1

编写源代码

我的课堂支持SKProductsRequestDelegate

- viewDidLoad回调方法中,我写了以下几行:

if ([SKPaymentQueue canMakePayments])
{
    NSLog(@"YES, I CAN MAKE PAYMENTS");
}
else
{
    NSLog(@"NO, I CAN NOT MAKE PAYMENTS"); 
}

在这个阶段一切都很好。我可以付款。

接下来,我尝试为我的产品创建请求:

SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers: [NSSet setWithObjects:@"com.testitem1", @"com.testitem2", @"com.testitem3", nil]];
request.delegate = self;
[request start];

在这个阶段一切都很好,在下一个阶段我的请求对象调用回调方法如下:

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
    NSArray *myProduct = response.products;
    NSLog(@"%@", myProduct);
}

但是没有任何产品响应,我不明白为什么。

我之前已经遇到过这个问题(我只是重置了我的设备,一切都很好),但在这种情况下,我无法弄清楚出了什么问题。

4

2 回答 2

5

我已经阅读了本指南:

https://developer.apple.com/library/ios/#technotes/tn2259/_index.html

就我而言,这与我没有获得银行信息有关。如果您想测试您的 IAP,您必须拥有一份带有您的税务信息的 iOS 付费应用程序合同 (iOS)。

于 2012-07-15T17:43:41.927 回答
-1

发生这种情况是因为您尚未在 iTunes Connect 中上传应用程序的二进制文件。转到 iTunes Connect,上传应用程序的二进制文件。上传后,立即拒绝它,以便将其标记为“Developer Rejected”。

SKProductResponse如果它是您的应用程序的第一个版本,这是您接收的必要步骤。它不会影响您的应用程序的审核。

于 2012-07-11T16:54:17.653 回答