card.io no escanea

tratando de integrar Card.io (v. 5.1.1) en mi aplicación y enfrentando un problema muy extraño con iPhone4 iOS v. 7.1.2. Cuando comienza la camera:

  1. no hace autofoco de la camera
  2. Si cubro la camera con algo, no enciende el flash
  3. cuando pongo la tarjeta en marco de ángulo verde, no hace nada. no aparecen líneas verticales / horizontales. solo algunas pantallas retrasadas de vez en cuando

Lo extraño es que cuando instalo card-io-sampleApp funciona perfectamente en el mismo dispositivo con las mismas tarjetas. El uber cardio funciona a la perfección también. Conseguir el controller card-io-sampleApp en mi aplicación no supuso ninguna diferencia.

(IBAction)scanButtonPressed:(id)sender { CardIOPaymentViewController *scanViewController = [[CardIOPaymentViewController alloc] initWithPaymentDelegate:self]; scanViewController.disableManualEntryButtons = YES; scanViewController.suppressScanConfirmation = YES; scanViewController.scannedImageDuration = 0.5f; scanViewController.collectExpiry = NO; scanViewController.scanExpiry = NO; [self presentViewController:scanViewController animated:YES completion:nil]; } (void)userDidCancelPaymentViewController:(CardIOPaymentViewController *)scanViewController { [scanViewController dismissViewControllerAnimated:YES completion:nil]; } (void)userDidProvideCnetworkingitCardInfo:(CardIOCnetworkingitCardInfo )info inPaymentViewController:(CardIOPaymentViewController )scanViewController { if (info.cardNumber.length > 0) { self.numberField.text = info.cardNumber; } [scanViewController dismissViewControllerAnimated:YES completion:nil]; } 

¿Qué me estoy perdiendo? La aplicación también utiliza la camera para escanear códigos QR. ¿Podría ser el problema? ¿tal vez algún otro conflicto?

¡Gracias!

Descubrí qué podría causar este comportamiento en iOS 7

Si tiene una animation infinita en algún lugar en el que instale CardIOPaymentViewController, no funcionará correctamente.

Fragmento de código que causa un problema

 - (void)animate:(UIView *)v { [UIView animateWithDuration:.8 delay:0 options:UIViewAnimationOptionAllowUserInteraction animations:^ { // some animation } completion:^(BOOL finished) { [self animate:v]; }]; } 

Por lo tanto, detenga la animation cuando presente el escáner o cuando el controller desaparezca.

 - (void) viewDidDisappear:(BOOL)animated { // stop animation here } 

Espero que esto ayude