在应用程序购买中没有返回任何内容

时间:2014-05-12 19:57:09

标签: ios in-app-purchase

我第一次尝试购买应用。我的问题是,为什么我没有可用的产品?

我之前已经看过这个问题,或者没有答案或者答案引用了错误的链接。

我在iTunes上配置了产品包ID。 我为该应用配置了应用内购买。

在我的代码中我做了:

productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productidentifiers];
productsRequest.delegate = self;
[productsRequest start] ;

我用应用程序购买中的捆绑ID来调用它(我也尝试过应用程序ID)。

此委托函数被调用

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response

产品是一个空数组。

这不会被调用:

- (void)request:(SKRequest *)request didFailWithError:(NSError *)error

这样做:

- (void)requestDidFinish:(SKRequest *)request

我需要检查什么才能获得产品?

2 个答案:

答案 0 :(得分:0)

您必须使用真实设备,并且还必须在iTunes Connect中设置测试帐户。

答案 1 :(得分:0)

您应该使用IAP产品ID而不是app id(或捆绑ID)。 IAP产品ID由itune connect创建。 “产品是一个空阵列。”意味着你从itunes商店请求的这个id(无论你使用什么)都不存在。 这是我的工作代码:

#define ProductID_IAPUNLOCKALL @"unlockall.myapp"
NSArray *product=[[NSArray alloc] initWithObjects:ProductID_IAPUNLOCKALL,nil];
NSSet *nsset = [NSSet setWithArray:product];
SKProductsRequest *request=[[SKProductsRequest alloc] initWithProductIdentifiers: nsset];
request.delegate=self;
[request start];
“unlockall.myapp”是itunes connect中定义的uniq字符串。