我试图使用UIImagePickerController与UIImagePickerControllerSourceTypePhotoLibrary,但它说,“没有照片”。模拟器从哪里获得图像?我应该在哪里复制图像,以便它们在模拟器中显示?


当前回答

如果你不能拖放你的文件,因为你遇到错误:

一个或多个媒体项导入失败::操作无法完成。(PHPhotosErrorDomain错误-1.)

将文件移动到Documents文件夹中,然后将它们拖到模拟器中。这将触发模拟器请求访问文件的权限。将它们放在下载文件夹中则不会。

其他回答

一步一步解释Airsource有限公司为模拟器添加图像的答案:

拖到模拟器,然后打开Safari (或使用Safari浏览器在互联网上浏览图片) 按住图像上的鼠标 当弹出窗口出现时,选择保存图像并享受;)

更新:对于iOS模拟器4.2,执行这些步骤两次以使其工作。谢谢kevboh !

更新:这也适用于iOS模拟器6.1

从Xcode 6开始,你可以使用命令行工具xcrun simctl。

用法非常简单;要将照片添加到当前运行的模拟器中,您可以使用引导占位符。

xcrun simctl addmedia booted ./MyFile.jpg

要将它添加到任何其他模拟器,您可以使用它的设备id,可以通过运行xcrun simctl list找到它。

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

对于iOS 4.2,我必须创建100APPLE文件夹并重新启动模拟器,然后它就工作了。

我只是需要一些随机的图像进行测试,所以这就是我所做的。

我有世界上最简单的解决办法。只需在模拟器中打开Safari,转到谷歌图像(或您自己的web或Dropbox URL),查看图像,按住鼠标按钮2秒,你会看到“保存图像”-它会保存到照片库中。清洗并重复。

对于iOS 7,我做了以下操作:

复制照片到这两个文件夹:

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

只删除这4个文件(以避免重新启动时重复):

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