Adicionando imagens ou vídeos ao iPhone Simulator


273

Estou tentando usar UIImagePickerControllercom UIImagePickerControllerSourceTypePhotoLibrary, mas ele diz: "Sem fotos". De onde o simulador obtém as imagens? Onde devo copiar as imagens para que sejam exibidas no simulador?


53
Arraste as imagens para o simulador do iPhone. Em seguida, clique com o botão direito na imagem para salvá-la.
Fattie

3
Não consegui clicar com o botão direito do mouse no sim atual, mas podia clicar no ícone "Compartilhar" e salvar a imagem.
Scott Rowley

A resposta de Scott Rowley funcionou para mim, e a de Joe Blow não. Eu acho que isso pode ser uma diferença de versão do Xcode 5.1.1.
Erstaples

Respostas:


230

A maneira mais simples de obter imagens, vídeos, etc. no simulador é arrastá-los e soltá-los do seu computador para o simulador. Isso fará com que o Simulador abra o aplicativo Fotos e comece a preencher a biblioteca.


Se você deseja um método com script, continue lendo.

Nota - embora isso seja válido e funcione, acho que a solução de Koen abaixo agora é melhor, pois não requer a reinicialização do simulador.

Identifique seu simulador acessando xCode-> Devices, selecionando seu simulador e verificando o valor do identificador.

Vamos para

~ / Biblioteca / Desenvolvedor / CoreSimulator / Devices / [Simulator Identifier] / data / Media / DCIM / 100APPLE

e adicione IMG_nnnn.THM e IMG_nnnn.JPG. Você precisará redefinir seu simulador (Hardware-> Reiniciar) para permitir que ele observe as novas alterações. Não importa se eles não são JPEGs - eles podem ser PNGs, mas parece que os dois devem estar presentes para que funcione. Pode ser necessário criar o DCIM se ele ainda não existir e, nesse caso, você deve iniciar o nnnn a partir de 0001. Os arquivos JPG são a versão em tamanho normal, enquanto os arquivos THM são a miniatura e têm tamanho de 75x75 pixels. Eu escrevi um script para fazer isso, mas há um melhor documentado aqui (-link não funciona mais).

Você também pode adicionar fotos do safari no simulador, tocando e segurando a imagem. Se você arrastar uma imagem (ou qualquer outro arquivo, como um PDF) para o simulador, ele abrirá imediatamente o Safari e exibirá a imagem; portanto, é uma maneira muito fácil de obter imagens.


No iPhone SDK 3.0, isso mudou um pouco. Agora, os arquivos em miniatura (".THM") precisam estar abaixo de 100APPLE / .MISC. Caso contrário, todas as fotos aparecerão como caixas pretas.

Como atualizo o ícone na célula Fotos salvas na exibição principal da tabela Álbum de fotos?
Simon Woodside

3
Minha localização é em~/Library/Application Support/iPhone Simulator/3.1.3/Media/DCIM/100APPLE
gak 07/04

3
Para mim, com o simulador 5.1, você não precisa dos arquivos .THM e o diretório precisa ser ~ / Library / Application Support / iPhone Simulator / 5.1 / Media / DCIM / 100APPLE O link do script na resposta não estava mais funcionando para me para que eu chicoteado até meu próprio script aqui: gist.github.com/3738695
Dav Yaginuma

11
Infelizmente com o iOS6, essa técnica não funciona mais. Porém, este pequeno aplicativo de importação, que você pode executar no simulador, funciona bem - aptogo.com.br/2010/09/importing-photos Veja as respostas classificadas mais abaixo abaixo.
Kenny Grant

444

Explique passo a passo a resposta da Airsource Ltd para adicionar imagem ao simulador:

  1. Arraste-o para o simulador e o Safari será aberto (ou navegue até a Imagem na Internet usando o Safari)
  2. Mantenha o seu clique na imagem
  3. Quando o pop-up aparecer, escolha Salvar imagem e aproveite;)

Atualização: para o iOS Simulator 4.2, siga estas etapas duas vezes para fazê-lo funcionar. Obrigado kevboh!

Atualização: isso também funciona para o iOS Simulator 6.1


1
Isso não funciona para mim com o simulador iOS versão 4.2 (235). Posso executar as etapas 1 a 3, mas quando vou para "Fotos" não vejo nada.
27611 Mark Fowler

2
Isso funcionou para mim quando eu não tinha aplicativos abertos; quando eu tinha um aplicativo aberto, ele passou pelas mesmas etapas, mas na verdade não funcionou.
Tristan Warner-Smith

formato de imagem deve ser .jpg only..it não iria trabalhar para .png eu acho
Talktobijju

1
Uau, isso foi tão fácil que parecia que eu estava trapaceando! BTW, como observado por @KarenAnne, isso funciona no simulador iOS 6.0, com fotos terminando em ~ / Library / Application Support / iPhone Simulator / 6.0 / Media / DCIM / 100APPLE e (parece) sem arquivos .THM. De qualquer forma, ótima dica!
31812 Dave Marley

Funciona perfeitamente com o iOS7 também. Boa resposta.
Craig Day


62

Com o iOS 8.0, adicionamos a capacidade de arrastar e soltar imagens no iOS Simulator. Você pode arrastar várias imagens para a janela e elas devem ser importadas para o rolo fotográfico do dispositivo simulado. Você também pode fazer isso com a ferramenta de linha de comando simctl. 'xcrun simctl addphoto'


2
Obrigado! Ótimo recurso. Observe que você não pode arrastá-los para o ícone do Dock; você deve arrastá-los para a janela do simulador. Espero que isso mude em breve para permitir arrastar para o ícone.
Jordan H

Arrastar para o ícone do Dock deve trazer as janelas do aplicativo para o primeiro plano (como se você arrastar para o ícone do Dock do Finder).
Jeremy Huddleston Sequoia

Oi @JeremyHuddlestonSequoia! Duas perguntas: o comando só funciona para fotos, não vídeos, certo? Além disso, existe alguma maneira de inserir informações no estilo "momento" no simulador (por exemplo, criar vários momentos, possivelmente atrasados, etc.)?
21715

1
Corrigir. É apenas para adicionar fotos. Não pode ser usado para vídeos. Não conheço uma maneira de atualizar os eventos, mas isso pode ser possível por meio do aplicativo Fotos. Se não, seria certamente vale a pena a apresentação de um radar para a bugreport.apple.com
Jeremy Huddleston Sequoia

@JeremyHuddlestonSequoia, ele não preserva os metadados originais dos ativos. Por favor, dê uma olhada no meu projeto que ajuda a importar os seus bens, preservando todos os metadados (incluindo vídeos!) Github.com/matibot/MBAssetsImporter
Mati Bot

45

Desde o Xcode 6, você pode usar a ferramenta de linha de comando xcrun simctl.

O uso é muito simples; Para adicionar uma foto ao simulador em execução no momento, use o bootedespaço reservado.

xcrun simctl addmedia booted ./MyFile.jpg

Para adicioná-lo a qualquer outro simulador, use o ID do dispositivo, que pode ser encontrado executando xcrun simctl list.

xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg

O último comando "xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg" parece funcionar apenas se o simulador estiver em execução. Eu esperava que houvesse uma solução para adicionar imagens sem executar, ou seja, preparar antes de executar um simulador.
StackUnderflow

26

É simples. Basta seguir estes passos:

  1. Arraste e solte a imagem no Simulador
  2. Agora a imagem é aberta no navegador Safari (arquivo: //.../ImageName). Toque e segure na Imagem.
  3. Isso exibe a actionSheet com a opção Salvar, Cancelar (também copie no caso do simulador do iOS 7).

    Captura de tela da folha de ações

  4. Salve a imagem. A imagem é adicionada à Biblioteca.

    Biblioteca de fotos


22

Acabei de descobrir como fazer upload de imagens em massa no iOS Simulator. (Só o confirmei no 6.1.)

  1. Faça backup da pasta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media
  2. Copie todas as suas imagens para a pasta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE
  3. Mova ou exclua a pasta:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData
  4. Reinicie o iOS Simulator

  5. Abra o aplicativo Fotos

O simulador restaurará todas as imagens da pasta 100APPLE!


1
Excelente solução. Larguei minhas fotos na pasta Media / DCIM, mas também precisava excluir a pasta PhotoData. E isso funciona para mim também com o iOS 7.
Swindler

Funciona para iOS7 também! Obrigado!
Klaas

1
Dos quatro métodos que eu tentei no simulador de 4 polegadas iOS7.0.3, este é o único que funcionou, embora eu tenha achado que tenho duplicatas de cada imagem. Votado.
Ash

1
Consegui usar este projeto do github no iOS7.0 para importar as imagens github.com/basilhe/iOS-Simulator-Photo-Importer . Parece ser uma variante do importador de fotos mencionado anteriormente, mas também faz vídeos.
Rob

Obrigado! Fiquei me perguntando por que as fotos transferidas não estão sendo exibidas, mesmo que eu já as tenha colocado em Media / DCIM / 100APPLE. Acontece que há uma etapa extra para excluir a pasta Media / PhotoData.
KarenAnne

22

Para o iOS 7, fiz o seguinte:

copie fotos para essas duas pastas:

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

exclua apenas esses 4 arquivos (para evitar duplicatas no relançamento):

~/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

1
A exclusão dos *.sqlite-arquivos funcionou para mim. Obrigado!
Zorayr #

Excelente, isso realmente me ajudou. Eu tentei vários métodos e até agora eu estava fazendo arrastar e soltar. Mas é mais maneira mais fácil quando você precisa copiar muitas imagens :)
Anand

5
Com o iOS 8, agora você pode arrastar fotos para o simulador :)
VaporwareWolf

Diferentemente da resposta da Arel, os filmes movidos para o DCIM / 100APPLE não ficarão disponíveis com esta técnica.
Steven Fisher


15

Isso é muito mais fácil com o novo iOS Simulator que acompanha o Xcode 6+ (iOS Simulator 8.1 e superior). Agora, tudo o que você precisa fazer é arrastar uma ou mais fotos para a janela do iOS Simulator e, em vez de abrir o Safari, o aplicativo Fotos abre e adiciona instantaneamente todas as fotos arrastadas ao dispositivo.


11

Método 1 (maneira mais fácil): se você tem sua imagem no Mac

Você pode arrastar uma imagem do Finder no seu Mac para o Simulator e ela é salva no álbum Fotos Salvas.

Método 2: se estiver em qualquer URL

Para salvar uma imagem de uma página da web no aplicativo Fotos

  1. Coloque o ponteiro na imagem que deseja salvar e mantenha pressionado o botão do mouse ou o trackpad.
  2. Quando o menu aparecer, clique em Salvar imagem para salvar a imagem no aplicativo Fotos em um simulador do iOS.
  3. A imagem é salva no álbum Fotos salvas no aplicativo Fotos.

Caso alguém que esteja procurando pela documentação da Apple sobre Copiar e colar no Simulador. Salvar imagem do Safari


Os únicos inconvenientes é que ele não funciona com várias imagens ao mesmo tempo.
Antzi 11/11

Funciona bem com várias imagens. Não posso acreditar que não sabia disso antes.
Dazzle

9

Nenhuma das respostas tinha a solução exata que eu precisava.

As etapas que eu encontrei trabalhando no iOS 5.0 e acima do simulador são as seguintes:

  1. Feche o simulador se estiver executando o projeto xcode.

  2. Execute o simulador a partir do dock, clicando nele.

  3. Arraste e solte a imagem no simulador.

  4. Toque e segure a imagem (aberta no safari) e selecione a opção Salvar.

Você terminou.


As imagens terminam em miniatura na resolução 552x668, que não é a imagem original. Por outro lado, o importador de imagens preserva a resolução original da imagem.
Rob

7

Para o iOS 5.1, isso é alterado para um novo caminho

~ / Biblioteca / Suporte a aplicativos / Simulador de iPhone / 5.1 / Mídia / DCIM / 100APPLE


7

No iOS 8, você pode simplesmente arrastar todas as suas fotos para a janela do simulador e elas serão salvas no rolo da câmera automaticamente. Você pode fazer quantas vezes quiser.


Foi uma delícia descobrir isso hoje, especialmente para testar o desempenho das visualizações de coleção com uma enorme quantidade de dados de imagem + otimização NSCache.
Eric Goldberg

Isso parou de funcionar no XCode 10 (testado na 10.1), iOS 12.1 :(
endavid

6

Se você precisar importar mais do que apenas uma ou duas fotos, dê uma olhada neste artigo que escrevi. Ele descreve uma maneira fácil de realizar uma importação em massa de fotos e funciona no iOS 4.x.


Isso funcionou para mim, mas eu precisava fazer uma alteração simples no aplicativo: como estou executando o simulador 4.2 e este foi projetado para rodar na versão 4.0 (que eu não tenho), fui para "Projeto" -> "Editar configurações do projeto" e, em "Arquiteturas", alterei o "SDK Base" para "iOS mais recente".
Mark Fowler

5

Para iOS 8, se não houver necessidade de manter a data e o local da captura de fotos, basta soltar os arquivos de fotos no simulador.

Para manter os metadados da foto, faça o seguinte:

  1. Copie os arquivos de foto para: / Usuários / {USUÁRIO} / Biblioteca / Desenvolvedor / CoreSimulator / Dispositivos / {UDID} / dados / Mídia / DCIM / 100Apple
  2. Remova (ou renomeie) a pasta: / Users / {USER} / Library / Developer / CoreSimulator / Devices / {UDID} / data / Media / photoData
  3. Relançar Simulador

Nota: Você precisa substituir {USER} pelo seu nome de usuário e {UDID} pelo UDID do simulador. Para encontrar o UDID do seu simulador, no Terminal, execute 'xcrun simctl list'.


Não fazer a diferença no 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.

3

Adicionar uma imagem à simulação do Iphone executando o IOS 8.0 é ainda mais fácil.

  • Arraste sua imagem para o simulador
  • O IOS abre o aplicativo Foto e sua imagem agora faz parte da sua coleção.

Não há mais necessidade de lidar com o Safari


Agora você também pode arrastar, de uma só vez, várias fotos diretamente para o álbum Rolo da câmera.
Paul Ardeleanu

1
@PaulArdeleanu, você está certo. No entanto, ele não preserva os metadados originais dos recursos. Por favor, dê uma olhada em meus projetos que ajuda a importar os seus bens enquanto preserva todos os metadados github.com/matibot/MBAssetsImporter
Mati Bot

1
@MatiBot, MBAssetsImporter é ótimo para transferência em massa de imagens - muito obrigado!
user2067021

2

Para o iOS 4.2, eu tive que criar a pasta 100APPLE e reiniciar o simulador, e funcionou.


2

tente este aplicativo que eu fiz. faça o download do código e execute-o no simulador https://github.com/cristianbica/CBSimulatorSeed


Não funciona imediatamente no iOS7 - diz algo sobre cocoaPods estar fora de sincronia.
Ash

Bem, você deve executar a instalação do pod para instalar os pods, pois eles não estão no repositório. Atualizei o README
bcd

2

Para o iOS 8.0, a resposta está desatualizada. Encontrei o recurso de mídia no seguinte caminho: ~ / Library / Developer / CoreSimulator / Devices / [DeviceID] / data / Media / DCIM / 100APPLE


2

A solução mais simples é simplesmente entrar no iCloud no simulador e usá-lo para transferir qualquer arquivo na unidade, incluindo fotos.


1

Basta arrastar e soltar a imagem no simulador do iphone. O navegador será aberto para mostrar sua imagem. pressione na imagem até não receber opções para salvar a imagem. Salvar imagem. é isso aí :). você verá sua imagem no aplicativo Photo em seu simulador ....


1

Eu escrevi um script bash para fazer isso. Verifique o link [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


1

Só para lhe dizer: a solução da KONG também funciona no iOS 7 beta.

Sua solução foi:

Arraste a imagem para o simulador e, em seguida, o Safari será aberto (ou navegue até a Imagem na Internet usando o Safari). Clique e segure a imagem. Quando o pop-up aparecer, escolha Salvar imagem e divirta-se;)


1

Eu só precisava de algumas imagens aleatórias para teste, então foi assim que eu fiz.

Eu tenho a solução mais simples do mundo. Basta abrir o Safari no simulador, acessar as imagens do Google (ou sua própria web ou URL do Dropbox), ver uma imagem, pressionar o botão do mouse por 2 segundos e você verá "Salvar imagem" - ele será salvo diretamente no Biblioteca de fotos. Enxague e repita.


1

de uma maneira ainda mais fácil: abra o safari no simulador> toque em www.google.com procure fotos aleatórias "natureza" abra cada imagem, pressione cada imagem e salve-a.


1

Com o recurso de arrastar e soltar, você perderá todos os metadados das fotos.

Criei um projeto que facilita muito a importação de ativos para o simulador: MBAssetsImporter .

Permite importar vídeos e fotos, preservando todos os metadados originais dos arquivos.


1

1. CD para este caminho:

/ Usuários / [usuário macOS] / Biblioteca / Desenvolvedor / CoreSimulator / Devices / [Simulator Identifier] / data / Media / DCIM / 100APPLE

O [Simulator Identifier] ou o UDID pode ser encontrado em: Hardware => dispositivo => gerenciar dispositivos.

por exemplo. cd / Usuários / rnDeveloper / Biblioteca / Desenvolvedor / CoreSimulator / Devices / 7508171A-DC5D-47CF-9BE1-FF950326E3DB / data / Media / DCIM / 100APPLE

2. Faça o download da foto executando este comando:

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

3. Reinicie o seu simulador para ver os novos arquivos.


1

Com o iOS 11 e o Xcode 9, basta arrastar e soltar fotos no Simulador. Ele será importado automaticamente no aplicativo Biblioteca. Muito fácil!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.