2012-01-31 13 views
9

Tengo toda la configuración de la tienda, todo está funcionando perfectamente.Compra InApp - Cómo detectar cuándo se muestra Alert 'Confirmar su compra en la aplicación'

Lo que estoy tratando de hacer ahora es cuando hacen clic en un botón para comprar algo de mi aplicación, estoy mostrando un tipo de UIActivityIndicator personalizado para mostrarles a los usuarios que las cosas se están cargando (y para detenerlas) retrocediendo en caso de que la alerta tarde más de 10 segundos en aparecer).

Tengo un tiempo de espera configurado para realizar después de un retraso de 30 segundos para ocultar el indicador de actividad en el caso de que la tienda no responda para que los usuarios no se queden estancados esperando por siempre. Todo esto está funcionando bien.

El problema es cuando se muestra la alerta 'Confirmar la compra de la aplicación', no estoy seguro de cómo recibir una notificación para que pueda ocultar el ActivityIndicator que todavía tengo en la parte posterior.

Existen métodos para detectar cuando el usuario pulsa Cancelar o Comprar que tengo, pero me gustaría ocultar el ActivityIndicator antes de que lleguen a uno para que los usuarios no lo vean en segundo plano mientras lo leen.

¿Pasé por alto a un delegado que funcionaría para esto? ¿O tendré que escribir algo personalizado para que esto funcione como yo quiero?

Gracias!


También probé la aplicación de la UIAlertViewDelegate con este método, sin embargo doens't coger las vistas de alertas compra en aplicación :(

- (void)didPresentAlertView:(UIAlertView *)alertView; 

En caso de que alguien más está interesado en una solución Me inventé

Cuando llamas a la carga y comienzas a conectarte a tu tienda, puedes agregar un observador para que capture cuando tu teléfono se cancele estando activo. De esta forma, cuando aparezca la alerta En aplicación, t El método que elija se llama y puede cancelar su monitor de actividad.

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(inAppAlertAppeared:) 
              name:UIApplicationWillResignActiveNotification 
              object:nil]; 
+0

creo que es tan bueno como cualquiera una solución. Buen trabajo. – TomSwift

+0

Buena solución, pero ¿puedo preguntar cómo sabe cuando el usuario hace clic en 'Comprar'? Eso es con lo que estoy luchando en este momento. –

+1

En su clase de administrador de Compra In App en el método (provedor) provideContent: (NSString *) productIdentifier puede publicar en NSNotificationCenter. Por lo que recuerdo, los métodos solo se llaman una vez que el usuario realmente compra algo. – rob1302

Respuesta

Cuestiones relacionadas