iOS en la compra de la aplicación: no se recibieron productos

Estoy tratando de agregar la compra en la aplicación a mi aplicación, siguiendo las técnicas descritas aquí:

Introducción a las compras en la aplicación en iOS 6 Tutorial

He agregado un producto a través de iTunes Connect, que tiene una identificación configurada de esta manera:

com.mycompany.myapp.myproduct1

La identificación del paquete (especificada en la lista p y también en la tienda de aplicaciones) se configura de la siguiente manera:

 com.mycompany.myapp

Estoy usando la clase auxiliar del tutorial, IAHelper, para manejar la funcionalidad de compra (el código relevante se muestra a continuación). También tiene una subclase que se usa esencialmente para agregar la identificación de los productos integrados en la aplicación a la matriz de identificadores de productos de IAHelper.

Para probar el código, creé un botón con la etiqueta "mostrar productos" que llama a este método:

- (IBAction) showProducts {

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(productsLoaded:) name:kProductsLoadedNotification object:nil];

    Reachability *reach = [Reachability reachabilityForInternetConnection]; 
    NetworkStatus netStatus = [reach currentReachabilityStatus];    
    if (netStatus == NotReachable) {        
        NSLog(@"No internet connection!");        
    } else {        
        if ([InAppMyAppAPHelper sharedHelper].products == nil) {


            // here's where it calls the helper class method to request the products
            [[InAppMyAppAPHelper sharedHelper] requestProducts];

            self.hud = [MBProgressHUD showHUDAddedTo:self.navigationController.view animated:YES];
            _hud.labelText = @"Loading vocabulary...";
            [self performSelector:@selector(timeout:) withObject:nil afterDelay:30.0];

        }        
    }

}

Este es el método para solicitar productos de iTunesConnect, llamado anteriormente:

- (void)requestProducts {

    self.request = [[[SKProductsRequest alloc] initWithProductIdentifiers:_productIdentifiers] autorelease];
    _request.delegate = self;
    [_request start];

}

(Tenga en cuenta que las variables precedidas por "_" se refieren a las variables reales del mismo nombre sin el guión bajo por varias declaraciones de síntesis)

Finalmente, este es el método (en IAHelper) que recibe una notificación cuando se recibe la respuesta:

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

    NSLog(@"IAHelper, received products results...");   

    self.products = response.products;
    self.request = nil;    

    // Here's the loop to list the products received
    for (id product in _products){
        NSLog(@"IAHelper, received product is: %@", product); 
    }


    [[NSNotificationCenter defaultCenter] postNotificationName:kProductsLoadedNotification object:_products];    
}

En lo anterior, las declaraciones de registro muestran que se llama al método, pero el ciclo para imprimir los productos recibidos no enumera nada.

Así que parece que no está encontrando el producto en iTunes connect. Sin embargo, he configurado un producto allí, y la identificación del producto es la misma que la identificación del paquete, más el identificador del producto, es decir,

bundle id:  com.mycompany.myapp
product id: com.mycompany.myapp.product1

Lo he comprobado varias veces.

Me di cuenta de que iTunes enumera el estado del producto publicitario como "listo para enviar". ¿Hay algún paso adicional que deba hacer para que esté disponible?

En general, ¿qué estoy haciendo mal?

Respuestas a la pregunta(8)

Su respuesta a la pregunta