2011-09-05 11 views
10

Sé que es posible obtener una captura de pantalla programaticamente del código en la aplicación iOS y obtener capturas de pantalla manualmente de Xcode e Instruments (Instruments también toma capturas de pantalla automáticamente durante fallas de la prueba UIAutomation). Lo que me gustaría encontrar es una forma programática (con código que se ejecuta en la Mac, no en el dispositivo) para capturar capturas de pantalla del dispositivo en la Mac en la que está conectado.Programemos la captura de pantalla del dispositivo iOS desde la computadora Mac conectada

¿Hay una API (o parámetros de línea de comandos) en Xcode o Instruments para obtener acceso a esta función de captura de pantalla? ¿O (idealmente) para interactuar con el dispositivo y obtener una captura de pantalla directamente, de la misma manera que lo hacen Xcode e Instruments?

Respuesta

7

Sí, hay una manera. Desea instalar la biblioteca gratuita libimobiledevice: https://github.com/benvium/libimobiledevice-macosx

Cuando está instalada, puede ejecutar idevicescreenshot desde la línea de comandos y guardará un archivo TIFF con una captura de pantalla en el directorio actual.

Ver http://pervasivecode.blogspot.de/2012/06/take-iphone-or-ipad-screenshot-from.html

+0

Gracias, exactamente lo que estaba buscando. Ahora necesito estudiarlo. :) – MacGeek

+0

@MacGeek ¡genial! ¡Déjame saber como va! :) –

2

No sé cómo obtener programáticamente la captura de pantalla del dispositivo y en su Mac, pero puede acceder al Organizador mientras ejecuta su aplicación, seleccione el dispositivo en la lista y en el submenú Screenshots , haz clic en el botón Nueva captura de pantalla. Ni siquiera tiene que estar depurando la aplicación, esto se puede hacer en cualquier momento.

enter image description here

Una de las aplicaciones más útiles de esta función es ser capaz de capturar una pantalla por defecto la imagen de lanzamiento para, o la creación de las imágenes necesarias para las imágenes de la muestra de la App Store.

+6

I mencionado explícitamente obtener capturas de pantalla de forma manual desde Xcode en mi pregunta en un intento de impedir este tipo de respuestas. – jhabbott

1

Compruebe si hay una entrada del diccionario Applescript para Xcode para la instantánea del Organizador. Si es así, llame o ejecute programáticamente esta función de Applescript.

+0

Esta sería una buena idea, excepto que no hay un conjunto de "Organizadores" en el diccionario Applescript de Xcode y, por lo tanto, todos los elementos no son secuenciables. Lo más cercano que pude conseguir fue "' tell application "Xcode" active set index of window "Organizer - Devices" a 1 end tell' " –

Cuestiones relacionadas