İPhone Simulator'a görüntü veya video ekleme


273

Ben kullanmaya çalışıyorum UIImagePickerControllerile UIImagePickerControllerSourceTypePhotoLibrary, ancak, "Hayır fotoğraflar" diyor. Simülatör görüntüleri nereden alıyor? Görüntüleri simülatörde görüntülenecek şekilde nereye kopyalamalıyım?


53
Görüntüleri iPhone simülatörüne sürükleyin. Ardından kaydetmek için görüntüye sağ tıklayın.
Fattie

3
Mevcut sim ile sağ tıklayamadım, ancak "Paylaş" simgesini tıklayıp görüntüyü kaydedebilirim.
Scott Rowley

Scott Rowley'nin yanıtı benim için çalıştı ve Joe Blow's işe yaramadı. Bunun bir Xcode 5.1.1 sürüm farkı olabileceğini düşünüyorum.
erstaples

Yanıtlar:


230

Simülatöre görüntü, video, vb almanın en basit yolu, onları bilgisayarınızdan simülatöre sürükleyip bırakmaktır. Bu, Simülatörün Fotoğraflar uygulamasını açmasına ve kitaplığı doldurmaya başlamasına neden olur.


Komut dosyası yazılabilir bir yöntem istiyorsanız, okumaya devam edin.

Not - bu geçerli ve çalışıyor olsa da, aşağıdaki Koen çözümünün daha iyi olduğunu düşünüyorum , çünkü simülatörün yeniden başlatılmasını gerektirmiyor.

Simülatörünüzü xCode-> Aygıtlar'a gidip simülatörünüzü seçip Tanımlayıcı değerini kontrol ederek tanımlayın.

Adresine git

~ / Kütüphane / Geliştirici / CoreSimulator / Cihazlar / [Simülatör Tanımlayıcı] / veri / Medya / DCIM / 100APPLE

ve IMG_nnnn.THM ve IMG_nnnn.JPG'yi ekleyin. Ardından, yeni değişiklikleri fark edebilmesi için simülatörünüzü (Donanım-> Yeniden Başlat) sıfırlamanız gerekir. JPEG olmamalarının bir önemi yoktur - her ikisi de PNG olabilir, ancak çalışması için her ikisinin de mevcut olması gerekir. Henüz yoksa DCIM oluşturmanız gerekebilir ve bu durumda nnnn'yi 0001'den başlatmalısınız. THG dosyaları küçük resim ve 75x75 piksel boyutundayken JPG dosyaları tam boyutlu sürümdür. Bunu yapmak için bir senaryo yazdım, ama burada daha iyi belgelenmiş bir senaryo var (-link artık çalışmıyor).

Ayrıca, resme dokunarak ve tutarak, simülatörde safari'den fotoğraf ekleyebilirsiniz. Bir görüntüyü (veya PDF gibi herhangi bir dosyayı) simülatöre sürüklerseniz, hemen Safari'yi açar ve görüntüyü görüntüler, bu nedenle görüntüleri almanın oldukça kolay bir yoludur.


İPhone SDK 3.0 altında, bu sadece biraz değişti. Şimdi, küçük resim dosyalarının (".THM") 100APPLE / .MISC altına girmesi gerekiyor. Aksi takdirde, tüm fotoğraflar siyah kutular olarak görünür.

Ana Fotoğraf Albümü tablo görünümünde Kayıtlı Fotoğraflar hücresindeki simgeyi nasıl güncelleyebilirim?
Simon Woodside

3
Konumum~/Library/Application Support/iPhone Simulator/3.1.3/Media/DCIM/100APPLE
gak

3
5.1 simülatörü ile benim için .THM dosyalarına ve ~ / Library / Application Support / iPhone Simulator / 5.1 / Media / DCIM / 100APPLE olması gereken dizine ihtiyacınız yok. Cevabın komut dosyası bağlantısı artık çalışmıyor Bu yüzden burada kendi senaryomu çırptım
Dav Yaginuma

11
Ne yazık ki iOS6 ile bu teknik artık çalışmıyor. Simülatörde çalıştırabileceğiniz bu küçük içe aktarma uygulaması iyi çalışıyor - aptogo.co.uk/2010/09/importing-photos Bunun altındaki düşük puanlı yanıtlara bakın.
Kenny Grant

444

Airsource Ltd'nin simülatöre görüntü ekleme cevabını adım adım açıklayın:

  1. Simülatöre sürükleyin, ardından Safari açılır (veya Safari'yi kullanarak İnternet'teki Görüntüye göz atın)
  2. Resme tıklayın
  3. Açılır pencere görüntülendiğinde Görüntüyü Kaydet'i seçin ve keyfini çıkarın;)

Güncelleme: iOS Simulator 4.2 için, çalışmasını sağlamak için bu adımları iki kez uygulayın. Teşekkürler kevboh!

Güncelleme: Bu aynı zamanda iOS Simulator 6.1 için de çalışıyor


1
Bu, iOS simülatörü Sürüm 4.2 (235) ile benim için çalışmıyor. 1-3 arası adımları uygulayabilirim, ancak "Fotoğraflar" a gittiğimde hiçbir şey göremiyorum.
Mark Fowler

2
Hiçbir uygulama açık olmadığında bu benim için çalıştı, bir uygulama açıkken aynı adımları attı ama aslında çalışmadı.
Tristan Warner-Smith

görüntü formatı sadece .jpg olmalıdır .. bence .png için işe yaramaz
Talktobijju

1
Vay bu hile gibi hissettim çok kolay oldu! BTW @KarenAnne tarafından belirtildiği gibi, bu fotoğraflar iOS 6.0 simülatöründe çalışır, fotoğraflar ~ / Library / Application Support / iPhone Simulator / 6.0 / Media / DCIM / 100APPLE ile sonuçlanır ve (görünür) .THM dosyası yoktur. Her durumda, harika ipucu!
Dave Marley

İOS7 ile de mükemmel çalışır. Güzel cevap.
Craig Day


62

İOS 8.0 ile, görüntüleri iOS Simulator'a sürükleyip bırakma özelliğini ekledik. Bir grup görüntüyü pencereye sürükleyebilirsiniz ve bu simüle edilen aygıt için fotoğraf makarasına aktarılmalıdır. Bunu simctl komut satırı aracıyla da yapabilirsiniz. 'xcrun simctl addphoto'


2
Teşekkürler! Harika özellik. Bunları Dock simgesine sürükleyemeyeceğinizi, bunları Simülatör penceresine sürüklemeniz gerektiğini unutmayın. Umarım yakında simgeye sürüklenmeye izin verilir.
Ürdün H

Dock simgesine sürüklemek uygulama pencerelerini ön plana getirmelidir (Finder dock simgesine sürüklerseniz olduğu gibi).
Jeremy Huddleston Sequoia

Merhaba @JeremyHuddlestonSequoia! İki soru: komut sadece resimler için çalışıyor, videolar için değil, değil mi? Ayrıca, simülatöre "moment" tarzı bilgi girmenin herhangi bir yolu var mıdır (örneğin, birden fazla anı oluşturmak, muhtemelen desteklenmektedir, vb.)?
julien_c

1
Doğru. Sadece fotoğraf eklemek içindir. Videolar için kullanılamaz. Etkinlikleri geri yüklemenin bir yolunun farkında değilim, ancak Fotoğraflar uygulamasıyla bu mümkün olabilir. Değilse, bugreport.apple.com
Jeremy Huddleston Sequoia

@JeremyHuddlestonSequoia, Varlıkların orijinal meta verilerini korumaz. Lütfen tüm meta verileri (videolar dahil!) Korurken
Mati Bot

45

Xcode 6'dan beri komut satırı aracını kullanabilirsiniz xcrun simctl.

Kullanımı çok basit; şu anda çalışan simülatöre fotoğraf eklemek için bootedyer tutucuyu kullanırsınız .

xcrun simctl addmedia booted ./MyFile.jpg

Başka bir simülatöre eklemek için, çalıştırılarak bulunabilen cihaz kimliğini kullanırsınız xcrun simctl list.

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

Son komut "xcrun simctl addmedia E201E636-CE6C-11E5-AB30-625662870761 ./MyFile.jpg" yalnızca simülatör çalışıyorsa çalışıyor gibi görünüyor. Bir simülatör çalıştırmadan önce hazırlamak için yani çalıştırmadan görüntü eklemek için bir çözüm olacağını umuyordum.
StackUnderflow

26

Basit. Şu adımları uygulamanız yeterlidir:

  1. Resmi Simülatöre sürükleyip bırakın
  2. Şimdi resim Safari tarayıcısında açılıyor (dosya: //.../ImageName). Görüntü üzerinde uzun dokunun.
  3. Bu işlem ActionSheet'i Kaydet, İptal seçeneği ile görüntüler (iOS 7 simülatörü durumunda da kopyalayın).

    Eylemler Sayfası için ekran görüntüsü

  4. Görüntüyü kaydedin. Görüntü Kitaplığa eklenir.

    Fotoğraf kütüphanesi


22

Sadece iOS Simulator'a toplu olarak nasıl resim yükleyeceğimi tökezledim . (Sadece 6.1'de onayladım.)

  1. Klasörü yedekleyin:

    ~/Library/Application Support/iPhone Simulator/6.1/Media
  2. Tüm resimlerinizi klasöre kopyalayın:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE
  3. Klasörü taşıyın veya silin:

    ~/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData
  4. İOS Simulator'u yeniden başlatın

  5. Fotoğraflar uygulamasını açın

Simülatör, 100APPLE klasöründeki tüm resimleri geri yükleyecektir!


1
Mükemmel çözüm. Fotoğraflarımı Media / DCIM klasörüne bırakmıştım ama PhotoData klasörünü de silmem gerekiyordu. Ve bu, iOS 7 ile de benim için çalışıyor.
Swindler

İOS7 için de çalışıyor! Teşekkürler!
Klaas

1
İOS7.0.3 4 inç simülatörü altında denediğim dört yöntemden, bu işe yarayan tek yöntemdi, ancak her görüntünün kopyalarını bulduğumu fark ettim. Upvoted.
Ash

1
Ben görüntüleri almak için iOS7.0 altında bu github projesini kullanmayı başardı github.com/basilhe/iOS-Simulator-Photo-Importer . Daha önce bahsedilen fotoğraf ithalatçısının bir varyantı gibi görünüyor, ancak videolar da var.
Rob

Teşekkürler! Önceden Media / DCIM / 100APPLE içine yerleştirmiş olsam bile, aktardığım fotoğrafların neden gösterilmediğini merak ediyordum. Görünen o ki, Media / PhotoData klasörünü silmenin ek bir adımı var.
KarenAnne

22

İOS 7 için aşağıdakileri yaptım:

fotoğrafları bu iki klasöre kopyalayın:

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

yalnızca bu 4 dosyayı sil (yeniden başlatma sırasında kopyaları önlemek için):

~/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
*.sqlite-Dosyaları silmek benim için çalıştı. Teşekkürler!
Zorayr

Mükemmel, gerçekten bana yardımcı oldu. Birkaç yöntem denedim ve şimdiye kadar sürükle bırak yapıyordum. Ama çok fazla görüntü kopyalamanız gerektiğinde daha kolay bir yol :)
Anand

5
İOS

Arel'in cevabından farklı olarak, DCIM / 100APPLE'a taşınan filmler bu teknikle kullanılamayacak.
Steven Fisher


15

Xcode 6+ (iOS Simulator 8.1 ve üstü) ile birlikte gelen yeni iOS Simulator ile bu çok daha kolay. Şimdi tek yapmanız gereken bir veya daha fazla fotoğrafı iOS Simulator penceresine sürüklemek ve Safari'yi açmak yerine Fotoğraflar uygulaması açılır ve sürüklenen tüm fotoğrafları anında cihaza ekler .


11

Yöntem 1 (En kolay yol): Görüntünüzü Mac'te alıyorsanız

Mac'inizdeki Finder'dan bir simülatörü Simülatöre sürükleyebilirsiniz ve kaydedilen Fotoğraflar albümüne kaydedilir.

Yöntem 2: herhangi bir URL ise

Bir web sayfasından Fotoğraflar uygulamasına resim kaydetmek için

  1. İşaretçiyi kaydetmek istediğiniz görüntünün üzerine getirin ve fare düğmesini veya izleme dörtgenini basılı tutun.
  2. Menü göründüğünde, görüntüyü iOS simülatöründeki Fotoğraflar uygulamasına kaydetmek için Görüntüyü Kaydet'i tıklayın.
  3. Görüntü, Fotoğraflar uygulamasındaki Kayıtlı Fotoğraflar albümüne kaydedilir.

Simülatörde Kopyalama ve Yapıştırma ile ilgili Apple Belgeleri arayan birini isteyin . Safari'den Görüntüyü Kaydet


Tek dezavantajı, aynı anda birden fazla görüntü ile çalışmamasıdır.
Antzi

Birden çok görüntü ile iyi çalışır. Bunu daha önce bilmediğime inanamıyorum.
Dazzle

9

Cevapların hiçbirinde ihtiyacım olan kesin çözüm yoktu.

İOS 5.0 ve üstü simülatörde kendim için bulduğum adımlar aşağıdaki gibidir:

  1. Xcode projesini çalıştırıyorsa simülatörü kapatın.

  2. Üzerine tıklayarak iskeleden simülatörü çalıştırın.

  3. Görüntüyü simülatöre sürükleyip bırakın.

  4. Görüntüye uzun dokunun (safari'de açılır) ve kaydet seçeneğini seçin.

Bitirdiniz.


Görüntüler, orijinal görüntü olmayan 552x668 çözünürlüğe minyatür olarak çıkar. Buna karşılık, görüntü aktarıcı orijinal görüntü çözünürlüğünü korur.
Rob

7

İOS 5.1 için bu yeni yol olarak değiştirildi

~ / Kütüphane / Uygulama Desteği / iPhone Simülatörü / 5.1 / Medya / DCIM / 100APPLE


7

İOS 8'den itibaren, tüm fotoğraflarınızı simülatör penceresine sürükleyebilirsiniz ve bunlar otomatik olarak kamera rulosuna kaydedilecektir. Bir seferde istediğiniz kadar yapabilirsiniz.


Bu, özellikle büyük miktarda görüntü verisi + NSCache optimizasyonu ile toplama görünümlerinin performansını test etmek için bugün bunu öğrenmek çok zevkliydi.
Eric Goldberg

Bu, XCode 10 (10.1'de test edildi), iOS 12.1 :(
endavid

6

Bir veya iki fotoğraftan fazlasını içe aktarmanız gerekiyorsa, yazdığım bu makaleye bir göz atın . Fotoğrafların toplu olarak içe aktarılmasını gerçekleştirmenin kolay bir yolunu açıklar ve iOS 4.x için çalışır.


Bu benim için çalıştı, ancak uygulamada basit bir değişiklik yapmam gerekiyordu: çünkü 4.2 simülatörünü çalıştırıyorum ve bu 4.0 üzerinde çalışacak şekilde tasarlandı (ki bende yok), "Project" e gittim -> "Proje Ayarlarını Düzenle" ve ardından "Mimariler" altında "Temel SDK" yı "En Son iOS" olarak değiştirdim.
Mark Fowler

5

İOS 8 için, fotoğraf çekim tarihini ve yerini korumanıza gerek yoksa, fotoğraf dosyalarını simülatöre bırakın.

Fotoğraf meta verilerini saklamak için aşağıdakileri yapın:

  1. Fotoğraf dosyalarını şuraya kopyalayın: / Users / {USER} / Library / Developer / CoreSimulator / Devices / {UDID} / data / Media / DCIM / 100Apple
  2. Klasörü kaldırın (veya yeniden adlandırın): / Users / {USER} / Library / Developer / CoreSimulator / Devices / {UDID} / data / Media / photoData
  3. Tekrar Simülatör

Not: {USER} kullanıcı adınızla ve {UDID} kullanıcısını simülatörün UDID'si ile değiştirmeniz gerekir. Simülatörünüz için UDID'yi bulmak için Terminal'den 'xcrun simctl list' komutunu çalıştırın.


IOS 8.1'de fark
yaratmaz

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

IOS 8.0 çalıştıran Iphone Simulation'a bir görüntü eklemek daha da kolay.

  • Resminizi simülatöre sürükleyin
  • IOS Fotoğraf uygulamasını açar ve resminiz artık koleksiyonunuzun bir parçasıdır.

Artık Safari ile uğraşmanıza gerek yok


Artık tek seferde birden fazla fotoğrafı doğrudan Film Rulosu albümüne sürükleyebilirsiniz.
Paul Ardeleanu

1
@PaulArdeleanu, haklısın. Ancak, öğelerin orijinal meta verilerini korumaz. Lütfen tüm meta verilerinizi korurken
Mati Bot

1
@MatiBot, MBAssetsImporter görüntülerin toplu aktarımı için harika - çok teşekkürler!
user2067021 06

2

İOS 4.2 için 100APPLE klasörünü oluşturup simülatörü yeniden başlatmam gerekiyordu, sonra işe yaradı.


2

yaptığım bu uygulamayı deneyin. kodu indirin ve simülatörde çalıştırın https://github.com/cristianbica/CBSimulatorSeed


İOS7 altında kullanıma hazır çalışmıyor - cocoaPod'ların senkronize olmama durumu hakkında bir şeyler söylüyor.
Ash

Pod'ları repoda olmadığı gibi kurmak için pod kurulumunu çalıştırmalısınız.
README'yi

2

İOS 8.0 için yanıt güncel değil. Medya kaynağını şu yolda buldum: ~ / Library / Developer / CoreSimulator / Devices / [DeviceID] / data / Media / DCIM / 100APPLE


2

En basit çözüm, simülatörde iCloud'da oturum açmak ve ardından fotoğraf da dahil olmak üzere sürücüdeki herhangi bir dosyayı aktarmak için bunu kullanmaktır.


1

Sadece sürükleyin ve iphone simülatörü içine görüntü bırakın. resminizi göstermek için tarayıcı açılır. Görüntüyü kaydetme seçenekleri almayıncaya kadar görüntünün üzerine basın. ardından Resmi kaydet. bu kadar :). Simülatörünüzde Fotoğraf uygulamasında görüntünüzü göreceksiniz ....


1

Bunu yapmak için bir bash senaryosu yazdım. Bağlantıyı kontrol edin [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

Sadece size söylemek gerekirse: KONG'nin çözümü iOS 7 beta üzerinde de çalışıyor.

Onun çözümü şuydu:

Görüntüyü simülatöre sürükleyin, ardından Safari açılır (veya Safari'yi kullanarak İnternet'teki Görüntüye göz atın) Görüntüyü tıklatmayı açın Açılır pencere görüntülendiğinde Görüntüyü Kaydet'i seçin ve keyfini çıkarın;)


1

Test için sadece rastgele görüntülere ihtiyacım vardı, bu yüzden böyle yaptım.

Dünyadaki en basit çözüme sahibim. Simülatörde Safari'yi açın, Google resimlerine (veya kendi web veya Dropbox URL'nize) gidin, bir resim görüntüleyin, fare düğmesini 2 saniye basılı tutun ve "Görüntüyü Kaydet" i görürsünüz - doğrudan Fotoğraf kütüphanesi. Durulayın ve tekrarlayın.


1

daha da kolay bir yoludur: simülatörde safari açın> www.google.com'a dokunun rastgele fotoğraflar aramak "doğa" her resmi açın, üzerine basın ve kaydedin.


1

Sürükle ve bırak özelliği ile fotoğrafların tüm meta verilerini kaybedeceksiniz.

Varlıkları simülatöre aktarmayı gerçekten kolaylaştıran bir proje oluşturdum: MBAssetsImporter .

Dosyaların tüm orijinal meta verilerini korurken hem videoları hem de fotoğrafları içe aktarmanızı sağlar.


1

1. Bu yola giden CD:

/ Kullanıcılar / [macOS kullanıcısı] / Kütüphane / Geliştirici / CoreSimulator / Cihazlar / [Simülatör Tanımlayıcı] / veri / Medya / DCIM / 100APPLE

[Simülatör Tanımlayıcısı] veya UDID'yi şu adreste bulabilirsiniz: Donanım => aygıt => aygıtları yönet.

Örneğin. cd / Kullanıcılar / rnDeveloper / Kütüphane / Geliştirici / CoreSimulator / Cihazlar / 7508171A-DC5D-47CF-9BE1-FF950326E3DB / veri / Medya / DCIM / 100APPLE

2. Bu komutu çalıştırarak fotoğrafı indirin:

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

3. Yeni dosyaları görmek için simülatörünüzü yeniden başlatın.


1

İOS 11 ve Xcode 9 ile fotoğrafları Simülatöre sürükleyip bırakın. Bunları otomatik olarak Kütüphane uygulamasına içe aktarır. Çok kolay!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.