代码之家  ›  专栏  ›  技术社区  ›  tuledev

在应用程序购买中:随机要求产品获得一些有效产品和一些无效产品?

  •  4
  • tuledev  · 技术社区  · 8 年前

    我正在进行应用内购买功能。今天我遇到一个奇怪的问题。

    我尝试通过以下方式获取列表产品 SKProductsRequest 问题是:有时我收到 invalidProductIdentifiers ,但有时我收到有效的产品。

    SKProductsRequest *productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObjects:objects]]; productsRequest.delegate = self; [productsRequest start];

    在过去,它工作得很好。但有一天问题出现了。

    请帮忙。

    非常感谢。

    2 回复  |  直到 8 年前
        1
  •  2
  •   Maddy    8 年前

    首先检查您的应用程序id不应使用通配符(*),它不能为应用程序内购买启用,因此请确保您应该创建一个新的应用程序标识。

    如果上述情况不是您的情况,那么您必须在从开发人员帐户创建新产品id后等待最多24小时,在此期间,您的产品id将从应用程序中提取。因为有时苹果需要时间来启用产品ID。

    如果以上两种情况都不是您的情况,那么最后您必须使用下面的代码检查您的产品ID是否有效。

    - (void)productsRequest:(SKProductsRequest )request didReceiveResponse:(SKProductsResponse )response {
    
    for (NSString *invalidProductId in response.invalidProductIdentifiers)
        {
            NSLog(@"Invalid product id: %@" , invalidProductId);
        }
    }
    

    http://troybrant.net/blog/2010/01/invalid-product-ids/

        2
  •  0
  •   tuledev    8 年前

    谢谢大家。

    “但有一天问题发生了”。有一天,它消失了。