Agregar imágenes o videos al simulador de iPhone

273

Estoy tratando de utilizar UIImagePickerControllercon UIImagePickerControllerSourceTypePhotoLibrary, pero dice: "No hay ninguna foto". ¿De dónde obtiene el simulador las imágenes? ¿Dónde debo copiar las imágenes para que se muestren en el simulador?

Vijayeta
fuente
53
Arrastre imágenes al simulador de iPhone. Luego haga clic derecho en la imagen para guardarla.
Fattie
3
No podía hacer clic derecho con el simulador actual, pero podía hacer clic en el icono "Compartir" y luego guardar la imagen.
Scott Rowley
La respuesta de Scott Rowley funcionó para mí, y la de Joe Blow no. Creo que esto podría ser una diferencia de lanzamiento de Xcode 5.1.1.
erstaples

Respuestas:

230

La forma más sencilla de obtener imágenes, videos, etc. en el simulador es arrastrarlos y soltarlos desde su computadora al simulador. Esto hará que el simulador abra la aplicación Fotos y comience a llenar la biblioteca.


Si quieres un método programable, sigue leyendo.

Nota: aunque esto es válido y funciona, creo que la solución de Koen a continuación es mejor, ya que no requiere reiniciar el simulador.

Identifique su simulador yendo a xCode-> Dispositivos, seleccionando su simulador y verificando el valor del Identificador.

Ir

~ / Library / Developer / CoreSimulator / Devices / [Simulator Identifier] / data / Media / DCIM / 100APPLE

y agregue IMG_nnnn.THM e IMG_nnnn.JPG. Luego deberá restablecer su simulador (Hardware-> Reiniciar) para permitirle notar los nuevos cambios. No importa si no son JPEG; ambos pueden ser PNG, pero parece que ambos deben estar presentes para que funcione. Es posible que necesite crear DCIM si aún no existe, y en ese caso debe comenzar nnnn desde 0001. Los archivos JPG son la versión de tamaño completo, mientras que los archivos THM son la miniatura y tienen un tamaño de 75x75 píxeles. Escribí un script para hacer esto, pero hay uno mejor documentado aquí (-link ya no funciona).

También puede agregar fotos de safari en el simulador, tocando y manteniendo presionada la imagen. Si arrastra una imagen (o cualquier otro archivo, como un PDF) al simulador, inmediatamente abrirá Safari y mostrará la imagen, por lo que esta es una manera bastante fácil de obtener imágenes.

Airsource Ltd
fuente
Bajo iPhone SDK 3.0, esto ha cambiado solo un poco. Ahora, los archivos de miniaturas (".THM") deben ir por debajo de 100APPLE / .MISC. De lo contrario, todas las fotos aparecerán como cuadros negros.
¿Cómo actualizo el icono en la celda Fotos guardadas en la vista de la tabla del Álbum de fotos principal?
Simon Woodside el
3
Mi ubicación está en~/Library/Application Support/iPhone Simulator/3.1.3/Media/DCIM/100APPLE
gak
3
Para mí con el simulador 5.1, no necesita los archivos .THM y el directorio debe ser ~ / Library / Application Support / iPhone Simulator / 5.1 / Media / DCIM / 100APPLE El enlace del script en la respuesta ya no funcionaba yo, así que preparé
Dav Yaginuma
11
Desafortunadamente con iOS6, esta técnica ya no funciona. Sin embargo, esta pequeña aplicación de importación que puede ejecutar en el simulador funciona bien - aptogo.co.uk/2010/09/importing-photos Vea las respuestas de menor calificación debajo de esta.
Kenny Grant
444

Explique paso a paso la respuesta de Airsource Ltd para agregar imágenes al simulador:

  1. Arrástrelo al simulador, luego se abre Safari (o busque la imagen en Internet usando Safari)
  2. Mantenga presionado su clic en la imagen
  3. Cuando aparezca la ventana emergente, elija Guardar imagen y disfrute;)

Actualización: para iOS Simulator 4.2, siga estos pasos dos veces para que funcione. Gracias kevboh!

Actualización: esto también funciona para iOS Simulator 6.1

KONG
fuente
1
Esto no funciona para mí con la versión 4.2 del simulador de iOS (235). Puedo ejecutar los pasos 1-3 bien, pero cuando voy a "Fotos" no veo nada.
Mark Fowler
2
Esto funcionó para mí cuando no tenía ninguna aplicación abierta, cuando tenía una aplicación abierta, siguió los mismos pasos pero en realidad no funcionó.
Tristan Warner-Smith
el formato de la imagen debe ser solo .jpg ... no funcionaría para .png, creo
Talktobijju
1
¡Wow, esto fue tan fácil que parecía que estaba haciendo trampa! Por cierto, como lo señaló @KarenAnne, esto funciona en el simulador de iOS 6.0, con fotos que terminan en ~ / Library / Application Support / iPhone Simulator / 6.0 / Media / DCIM / 100APPLE y (al parecer) no hay archivos .THM. En cualquier caso, un gran consejo!
Dave Marley
Funciona perfectamente con iOS7 también. Buena respuesta.
Craig Day
129

3 pasos simples

  1. Arrastre y suelte la imagen en el simulador
    : esto abrirá un navegador con su imagen
  2. Haga clic y sostenga la imagen
    : esto abrirá opciones
  3. guardar imagen
    : esto copiará la imagen en el simulador

Vea el video de YouTube (agregue imágenes al simulador de iPhone)

usuario380427
fuente
No funciona para video. Porque no pasa nada cuando presionas la pantalla por mucho tiempo.
Bagusflyer
62

Con iOS 8.0, agregamos la capacidad de arrastrar y soltar imágenes en el simulador de iOS. Puede arrastrar un montón de imágenes a la ventana, y deben importarse al carrete de fotos para ese dispositivo simulado. También puede hacerlo con la herramienta de línea de comandos simctl. 'xcrun simctl addphoto'

Jeremy Huddleston Sequoia
fuente
2
¡Gracias! Gran característica Tenga en cuenta que no puede arrastrarlos al icono del Dock, debe arrastrarlos a la ventana del simulador. Espero que eso cambie pronto para permitir arrastrar al icono.
Jordan H
Arrastrando al ícono del Dock debería poner las ventanas de la aplicación en primer plano (como si arrastraras al ícono del Dock del Finder).
Jeremy Huddleston Sequoia
Hola @JeremyHuddlestonSequoia! Dos preguntas: el comando solo funciona para imágenes, no para videos, ¿verdad? Además, ¿hay alguna forma de ingresar información de estilo de "momento" en el simulador (es decir, crear múltiples momentos, posiblemente retroactivos, etc.)?
julien_c
1
Correcto. Es solo para agregar fotos. No se puede usar para videos. No conozco una forma de retroceder los eventos, pero eso puede ser posible a través de la aplicación Fotos. Si no, sin duda valdría la pena presentar un radar en bugreport.apple.com
Jeremy Huddleston Sequoia
@JeremyHuddlestonSequoia, no conserva los metadatos originales de los activos. Eche un vistazo a mi proyecto que lo ayuda a importar sus activos mientras conserva todos los metadatos (¡Incluyendo videos!) Github.com/matibot/MBAssetsImporter
Mati Bot
45

Desde Xcode 6 puede usar la herramienta de línea de comando xcrun simctl.

El uso es muy simple; para agregar una foto al simulador actualmente en ejecución, use el bootedmarcador de posición.

xcrun simctl addmedia booted ./MyFile.jpg

Para agregarlo a cualquier otro simulador, use su ID de dispositivo, que se puede encontrar ejecutando xcrun simctl list.

xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg
Koen
fuente
El último comando "xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg" solo parece funcionar si el simulador se está ejecutando. Esperaba que hubiera una solución para agregar imágenes sin ejecutarlas, es decir, prepararlas antes de ejecutar un simulador.
StackUnderflow
26

Es sencillo. Solo sigue estos pasos:

  1. Arrastra y suelta la imagen en el simulador
  2. Ahora la imagen se abre en el navegador Safari (archivo: //.../ImageName). Toque y mantenga presionada la imagen.
  3. Esto muestra actionSheet con la opción Guardar, Cancelar (también copiar en el caso del simulador de iOS 7).

    Captura de pantalla para la hoja de acciones

  4. Guarda la imagen. La imagen se agrega a la Biblioteca.

    Librería fotográfica

Jayprakash Dubey
fuente
22

Acabo de encontrar cómo subir imágenes de forma masiva en el simulador de iOS. (Solo lo he confirmado en 6.1.)

  1. Copia de seguridad de la carpeta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media
  2. Copie todas sus imágenes en la carpeta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE
  3. Mover o eliminar la carpeta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData
  4. Reiniciar simulador de iOS

  5. Abre la aplicación Fotos

¡El simulador restaurará todas las imágenes de la carpeta 100APPLE!

Arel
fuente
1
Excelente solucion. Había dejado caer mis fotos en la carpeta Media / DCIM pero también necesitaba eliminar la carpeta PhotoData. Y esto también funciona para mí con iOS 7.
Estafador
¡Funciona también para iOS7! ¡Gracias!
Klaas
1
De los cuatro métodos que probé con el simulador de iOS7.0.3 de 4 pulgadas, este es el único que funcionó, aunque descubrí que tengo duplicados de cada imagen. Votado
Ash
1
Pude usar este proyecto github en iOS7.0 para importar las imágenes github.com/basilhe/iOS-Simulator-Photo-Importer . Parece ser una variante del importador de fotos mencionado anteriormente, pero también hace videos.
Rob
¡Gracias! Me preguntaba por qué las fotos que he transferido no se muestran, incluso si ya las coloqué en Media / DCIM / 100APPLE. Resulta que hay un paso adicional para eliminar la carpeta Media / PhotoData.
KarenAnne
22

Para iOS 7 hice lo siguiente:

copiar fotos a estas dos carpetas:

~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE
~/Library/Application Support/iPhone Simulator/7.0/Media/DCIM/100APPLE

elimine solo estos 4 archivos (para evitar duplicados en el relanzamiento):

~/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData/Photos.sqlite-shm
~/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData/Photos.sqlite-wal
~/Library/Application Support/iPhone Simulator/7.0/Media/PhotoData/Photos.sqlite-shm
~/Library/Application Support/iPhone Simulator/7.0/Media/PhotoData/Photos.sqlite-wal
usuario2966386
fuente
1
Eliminar los *.sqlite-archivos funcionó para mí. ¡Gracias!
Zorayr
Excelente, realmente me ayudó. Probé varios métodos y hasta ahora estaba haciendo arrastrar y soltar. Pero es más fácil cuando necesitas copiar demasiadas imágenes :)
Anand
55
Con iOS 8, ahora puedes arrastrar fotos al simulador :)
VaporwareWolf
A diferencia de la respuesta de Arel, las películas trasladadas a DCIM / 100APPLE no estarán disponibles con esta técnica.
Steven Fisher
17

Simplemente arrastre imágenes al simulador de iPhone.

Mihail Salari
fuente
15

Esto es MUCHO más fácil con el nuevo Simulador de iOS que viene con Xcode 6+ (iOS Simulator 8.1 y superior). Ahora todo lo que tiene que hacer es arrastrar una o más fotos a la ventana del Simulador de iOS y, en lugar de abrir Safari, la aplicación Fotos se abre y agrega instantáneamente todas las fotos arrastradas al dispositivo.

Donald Burr
fuente
11

Método 1 (la forma más fácil): si tienes tu imagen en Mac

Puede arrastrar una imagen desde el Finder en su Mac al Simulador, y se guarda en el álbum Fotos guardadas.

Método 2: si está en cualquier URL

Para guardar una imagen de una página web en la aplicación Fotos

  1. Coloque el puntero en la imagen que desea guardar y mantenga presionado el botón del mouse o el panel táctil.
  2. Cuando aparezca el menú, haga clic en Guardar imagen para guardar la imagen en la aplicación Fotos en un simulador de iOS.
  3. La imagen se guarda en el álbum Fotos guardadas en la aplicación Fotos.

En caso de que alguien busque Documentación de Apple sobre Copiar y Pegar en el Simulador. Guardar imagen de Safari

Ammar Mujeeb
fuente
El único inconveniente es que no funciona con varias imágenes a la vez.
Antzi
Funciona bien con múltiples imágenes. No puedo creer que no supiera esto antes.
Deslumbra el
9

Ninguna de las respuestas tenía la solución exacta que necesitaba.

Los pasos que he encontrado para mí mismo trabajando en iOS 5.0 y simulador superior son los siguientes:

  1. Cierre el simulador si está ejecutando el proyecto xcode.

  2. Ejecute el simulador desde el muelle haciendo clic en él.

  3. Arrastra y suelta la imagen en el simulador.

  4. Mantenga presionada la imagen (abierta en safari) y seleccione la opción de guardar.

Estás listo.

Arshad Parwez
fuente
Las imágenes terminan en miniatura a una resolución de 552x668, que no es la imagen original. Por el contrario, el importador de imágenes conserva la resolución de la imagen original.
Rob
7

Para iOS 5.1, esto se cambia aún más a una nueva ruta

~ / Library / Application Support / iPhone Simulator / 5.1 / Media / DCIM / 100APPLE

Deepak Keswani
fuente
7

A partir de iOS 8, puede arrastrar todas sus fotos a la ventana del simulador y se guardarán automáticamente en el carrete. Puedes hacer tantas a la vez como quieras.

bcherry
fuente
Fue muy agradable descubrirlo hoy, especialmente para probar el rendimiento de las vistas de colección con una gran cantidad de datos de imagen + optimización NSCache.
Eric Goldberg
Esto dejó de funcionar en XCode 10 (probado en 10.1), iOS 12.1 :(
endavid
6

Si necesita importar más de una o dos fotos, eche un vistazo a este artículo que escribí. Describe una manera fácil de realizar una importación masiva de fotos y funciona para iOS 4.x.

Robin Summerhill
fuente
Esto funcionó para mí, pero necesitaba hacer un cambio simple en la aplicación: como estoy ejecutando el simulador 4.2 y esto fue diseñado para ejecutarse en 4.0 (que no tengo), fui a "Proyecto" -> "Editar configuración del proyecto" y luego, en "Arquitecturas", cambié el "SDK base" a "Último iOS".
Mark Fowler
5

Para iOS 8, si no es necesario conservar la fecha y la ubicación de la captura de fotos, simplemente suelte los archivos de fotos en el simulador.

Para retener los metadatos de la foto, haga lo siguiente:

  1. Copie archivos de fotos a: / Usuarios / {USUARIO} / Biblioteca / Desarrollador / CoreSimulator / Dispositivos / {UDID} / data / Media / DCIM / 100Apple
  2. Eliminar (o renombrar) la carpeta: / Users / {USER} / Library / Developer / CoreSimulator / Devices / {UDID} / data / Media / photoData
  3. Simulador de relanzamiento

Nota: debe reemplazar {USER} con su nombre de usuario y {UDID} con el UDID del simulador. Para encontrar UDID para su simulador, desde la Terminal, ejecute 'xcrun simctl list'.

Joe Smith
fuente
No hace la diferencia en iOS 8.1
nadeem gc
3
quit the simulator.

Run simulator from the dock by clicking on it.

Drag & drop the image into simulator which you want to add.

it will open image in safari .

tap and hold the image and click the save option.

then open gallery and you will see the image which u had saved recently.
C_compnay
fuente
3

Agregar una imagen a la simulación de iPhone con iOS 8.0 es aún más fácil.

  • Arrastra tu imagen al simulador
  • IOS abre la aplicación Foto y su imagen ahora es parte de su colección.

Ya no es necesario lidiar con Safari

Thomas
fuente
Ahora también puede arrastrar, de una vez, varias fotos directamente al álbum Camera Roll.
Paul Ardeleanu
1
@PaulArdeleanu, tienes razón. Sin embargo, no conserva los metadatos originales de los activos. Eche un vistazo a mis proyectos que lo ayudan a importar sus activos mientras conserva todos los metadatos github.com/matibot/MBAssetsImporter
Mati Bot
1
@MatiBot, MBAssetsImporter es ideal para la transferencia masiva de imágenes, ¡muchas gracias!
user2067021
2

Para iOS 4.2 tuve que ir y crear la carpeta 100APPLE y reiniciar el simulador, luego funcionó.

sabross
fuente
2

prueba esta aplicación que hice. descargue el código y ejecútelo en el simulador https://github.com/cristianbica/CBSimulatorSeed

bcd
fuente
No funciona fuera de la caja bajo iOS7: dice algo sobre que cocoaPods no está sincronizado.
Ash
Bueno, debes ejecutar pod install para instalar los pods ya que no están en el repositorio. He actualizado el archivo README
bcd del
2

Para iOS 8.0, la respuesta está desactualizada. Encontré el recurso multimedia en la siguiente ruta: ~ / Library / Developer / CoreSimulator / Devices / [DeviceID] / data / Media / DCIM / 100APPLE

tbago
fuente
2

La solución más simple es simplemente iniciar sesión en iCloud en el simulador y luego usarlo para transferir cualquier archivo en el disco, incluidas las fotos.

prolfe
fuente
1

Simplemente arrastre y suelte la imagen en el simulador de iPhone. El navegador se abrirá para mostrar su imagen. presione sobre la imagen hasta que no reciba opciones para guardar la imagen. luego Guardar imagen. Eso es :). Verá su imagen en la aplicación Photo en su simulador ...

Bhagirath
fuente
1

Escribí un script bash para hacer esto. Mira el enlace [1]

#!/bin/bash

# Imports pictures into all iOS simulators.

path_to_pic="src/ios/pictures/"

mkdir -p /Users/$(whoami)/Library/Application\ Support/iPhone\ Simulator/{5.0,5.1,6.0,6.1}/Media/DCIM/100APPLE/
find ~/Library/Application\ Support/iPhone\ Simulator/ -type d -name '100APPLE' -exec cp /Users/$(whoami)/$path_to_pic/* {} \;

[1]: https://gist.github.com/firesofmay/5194901

fuegos artificiales
fuente
1

Solo para decirte: la solución de KONG también funciona en iOS 7 beta.

Su solución fue:

Arrastre la imagen al simulador, luego Safari se abre (o navegue a la imagen en Internet usando Safari) Mantenga presionado el botón sobre la imagen Cuando aparezca la ventana emergente, elija Guardar imagen y disfrute;)

mathgag555
fuente
1

Solo necesitaba algunas imágenes aleatorias para probar, así que así es como lo hice.

Tengo la solución más simple del mundo. Simplemente abra Safari en el simulador, vaya a las imágenes de Google (o su propia web o URL de Dropbox), vea una imagen, mantenga presionado el botón del mouse durante 2 segundos y verá "Guardar imagen": se guardará directamente en el Biblioteca de fotos. Enjuague y repita.

Justin Schier
fuente
1

una forma aún más fácil es: abrir safari en el simulador> tocar www.google.com buscar fotos aleatorias "naturaleza" abrir cada imagen, presionar sobre ella y guardarla.

Luna negra
fuente
1

Con la función de arrastrar y soltar, perderá todos los metadatos de las fotos.

He creado un proyecto que facilita la importación de activos al simulador: MBAssetsImporter .

Le permite importar videos y fotos mientras conserva todos los metadatos originales de los archivos.

Mati Bot
fuente
1

1. CD a esta ruta:

/ Usuarios / [usuario de macOS] / Biblioteca / Desarrollador / CoreSimulator / Dispositivos / [Identificador del simulador] / data / Media / DCIM / 100APPLE

[Identificador del simulador] o UDID se puede encontrar en: Hardware => dispositivo => administrar dispositivos.

p.ej. cd / Users / rnDeveloper / Library / Developer / CoreSimulator / Devices / 7508171A-DC5D-47CF-9BE1-FF950326E3DB / data / Media / DCIM / 100APPLE

2. Descargue la foto ejecutando este comando:

curl -o pic_001.jpg " https://s-media-cache-ak0.pinimg.com/474x/49/25/7a/49257a4b3287b7841922ecdff855fd80.jpg "

3. Reinicie su simulador para ver los nuevos archivos.

Thanh Lam
fuente
1

Con iOS 11 y Xcode 9, simplemente arrastre y suelte fotos en el simulador. Los importará automáticamente en la aplicación Biblioteca. ¡Muy fácil!

aramusss
fuente