应用内购买测试不返回产品标识符

Posted

技术标签:

【中文标题】应用内购买测试不返回产品标识符【英文标题】:In-App purchase testing not returning product identifier 【发布时间】:2015-01-07 20:30:14 【问题描述】:

我登录了 iTunes Connect 并通过输入所需的所有信息和屏幕截图创建了我的应用程序。目前状态是“准备提交”(我应该在测试应用内购买之前“提交审核”吗?)。我去了应用内购买部分并添加了我的应用内购买以及所有产品 ID、苹果 ID、类型和屏幕截图设置。当前状态为“准备提交”。我编写了测试应用内购买的代码,但找不到我在 iTunes Connect 中设置的产品标识符。我做错什么了?

测试itunes connect的代码:

- (void)requestProUpgradeProductData


    NSSet *productIdentifiers = [NSSet setWithObject:@"-->my product identifier here<--" ];

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



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


    NSArray *products = response.products;

    proUpgradeProduct = [products count] == 1 ? [products firstObject]  : nil;
    if (proUpgradeProduct)
    
        NSLog(@"Product title: %@" , proUpgradeProduct.localizedTitle);
        NSLog(@"Product description: %@" , proUpgradeProduct.localizedDescription);
        NSLog(@"Product price: %@" , proUpgradeProduct.price);
        NSLog(@"Product id: %@" , proUpgradeProduct.productIdentifier);
    

    for (NSString *invalidProductId in response.invalidProductIdentifiers)
    
        NSLog(@"Invalid product id: %@" , invalidProductId);
    


【问题讨论】:

【参考方案1】:

不,不需要是“提交审核”。

即使是“等待截图”,您也可以测试应用内购买。返回“无效产品”的原因可能有多种。您的产品 ID 是否与 iTunes Connect 中的相同?你履行了ios付费应用合同吗? bundle id 一样吗?

您可以查看此清单 http://www.gamedonia.com/game-development/solve-invalid-product-ids

【讨论】:

我认为我唯一没有做的就是履行ios付费应用合同。对于合同,除了我必须向苹果发送税务信息的部分外,一切都已完成。我是否必须等到完成后才能进行应用内测试?如果可以,通常需要多长时间? 是的,您必须等待:/。嗯,就我而言,银行信息处理大约需要 15 分钟。 那个gamedonia超链接已经死了,顺便说一句

以上是关于应用内购买测试不返回产品标识符的主要内容,如果未能解决你的问题,请参考以下文章

iOS - 应用内购买 - 无效的产品标识符

应用内购买测试帮助 IAP

StoreKit In App Purchase 无效的产品标识符 [重复]

为啥 SKProductsRequest 需要产品标识符?

无法在应用购买中从 iTunes Connect 获取产品标识符?

iOS 应用内购买。识别购买的产品(非消耗品)。