IAP问题 - response.products数组中没有产品

时间:2012-08-11 10:48:15

标签: objective-c ios storekit

我在应用内购买时遇到问题。向服务器发送请求后,SKProductsRequest没有返回任何产品。

我这样发送请求:

    NSMutableSet *identificators = [[NSMutableSet alloc] init];
    [identificators addObject:kInAppPurchaseOneWeekIdentifier];
    [identificators addObject:kInAppPurchaseOneMonthIdentifier];
    [identificators addObject:kInAppPurchaseSixMonthsIdentifier];

    SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:identificators];
    request.delegate = self;
    [request start];

    [identificators release];

在Consts.h中我有那些

// In App Purchase
#define kInAppPurchaseOneWeekIdentifier              @"com.astroboxapp.iap.OneWeek"
#define kInAppPurchaseOneMonthIdentifier             @"com.astroboxapp.iap.OneMonth"
#define kInAppPurchaseSixMonthsIdentifier            @"com.astroboxapp.iap.SixMonths"

在我的课上我实施了

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

    if ( [response.products count] > 0 ) {
     // i've do my stuff - show the IAP to the user
    } else {
     // here goes the error handling
    }

}

在我的情况下[response.products count]是空数组/字典所以我 抛出错误。

编辑:我做了什么?

  1. 我创建了一个新的IAP并将它们与我的应用相关联,我也更改了产品ID并在我的Consts.h中更改了它们

  2. 我试图将应用版本从1.0更改为1.1以帮助我更改此版本的IAP。

  3. 仍然没有在我的设备上工作,而在模拟器中有我的IAP条目,但我可以测试 - 因为StoreKit不允许从sumulator测试购买。

  4. 在我的设备上,我从商店退出。

1 个答案:

答案 0 :(得分:2)

如果[response invalidProductIdentifers]数组不为空,则表示您的产品无法下载,因此产品数量为空是正常的。请检查您的回复内容