2010-01-30 8 views

Respuesta

102

Hay una serie de características específicas del dispositivo que debe probar en el dispositivo, pero no es más difícil que usar el simulador. Simplemente construya un objetivo de depuración para el dispositivo y déjelo conectado a la computadora.

lista de acciones que requieren un dispositivo real:

  • el teléfono real
  • la cámara
  • el acelerómetro
  • datos GPS reales
  • la brújula
  • vibraciones
  • notificaciones push ...

-t

+30

Eso es una mierda, ¿qué pasa si necesita probar una versión anterior del sistema operativo en su destino de despliegue, supongo que sería jodido entonces. – marchinram

+0

¿Downgrade? Esa es la razón por la que Xcode incluye una restauración con un solo clic. –

+2

Aquí hay instrucciones sobre cómo degradar su dispositivo: http://www.iclarified.com/31004/how-to-downgrade-from-ios-7-beta-to-ios-6 – knagode

1

No (a menos que hayan agregado una forma de hacerlo en 3.2, todavía no se han comprobado).

0

me escribió una vista de reemplazo para usar en modo de depuración. Implementa la misma API y realiza las mismas devoluciones de llamada de delegado. En mi caso, hice que devolviera una imagen aleatoria de mi conjunto de prueba. Bastante trivial para escribir

+66

¿Puedes compartir el código? :) – Tudorizer

+3

Y, podría hacerlo para devolver una imagen desde la iSight Camera :) –

1

Una razón común para la necesidad de acceder a la cámara es hacer capturas de pantalla para la AppStore.

Dado que la cámara no está disponible en el simulador, un buen truco (el único que conozco) es cambiar el tamaño de su vista en el tamaño que necesita, solo el tiempo para tomar las capturas de pantalla. Los recortarás más tarde.

Claro, usted necesita tener el dispositivo con la pantalla más grande disponible.

El iPad es perfecto para probar diseños y hacer instantáneas para todos los dispositivos. Imágenes para iPhone6 ​​+ tendrán que ser estirado un poco (escalado por 1,078125 - No es un gran problema ...)

Buen enlace a una resolución rápida dispositivos IOS ref: http://www.iosres.com/

+6

O simplemente use Archivo -> "Guardar captura de pantalla" dentro del simulador de iOS? ... – Cyrus

+0

Ese es el punto de la pregunta ... No hay cámara en el simulador. – Moose

+0

¿Por qué necesitarías una cámara para tomar capturas de pantalla? – Raphael

6

que necesitaba para probar algunos superposiciones personalizadas para fotos. Las superposiciones deben ajustarse en función del tamaño/resolución de la imagen.

Me acerqué a esto de una manera que era similar a la sugerencia de Stefan, decidí codificar una respuesta de cámara "ficticia".

Cuando el simulador se está ejecutando, ejecuto este código ficticio en lugar del estándar "captureStillImageAsynchronouslyFromConnection".

En este código ficticio, creo una "foto negra" de la resolución necesaria y luego la envío a través de la interconexión para que se la trate como una foto normal. Esencialmente brinda la sensación de una cámara muy rápida.

CGSize sz = UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation]) ? CGSizeMake(2448, 3264) : CGSizeMake(3264, 2448); 
UIGraphicsBeginImageContextWithOptions(sz, YES, 1); 
[[UIColor blackColor] setFill]; 
UIRectFill(CGRectMake(0, 0, sz.width, sz.height)); 
UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

NSData *imageData = UIImageJPEGRepresentation(image, 1.0); 

La imagen de arriba es equivalente a las fotos de 8MP que envían la mayoría de los dispositivos actuales. Obviamente para probar otras resoluciones, cambiarías el tamaño.

Cuestiones relacionadas