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


当前回答

对于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

其他回答

使用拖放功能,您将丢失照片的所有元数据。

我已经创建了一个项目,可以很容易地将资产导入模拟器:MBAssetsImporter。

它使您可以导入视频和照片,同时保留文件的所有原始元数据。

在iOS 8.0中,我们添加了将图像拖放到iOS模拟器中的功能。您可以将一堆图像拖到窗口中,它们应该被导入到该模拟设备的照片卷轴中。您还可以使用simctl命令行工具完成此操作。xrun simctl addphoto

在OS X Catalina和Xcode 11中,你必须做不同的事情。

首先你必须启动模拟器。如果你想复制,说一张照片到多个模拟设备。把它们都启动。然后右键单击一个单一(多个图像将失败。只做一个文件。)

共享->模拟器

将弹出“共享表”。您必须在组合框中选择一个活动模拟器并点击发送。

它将发送一个到许多,但不是许多到许多选定的照片。

我希望这能帮助到大家。Xcode和OS X的上一个版本支持拖放,但OS X Catalina和Xcode 11不支持拖放。

虽然这是在方向,但目前是行不通的。

对我来说有用的是首先将我的图像导入到OS X的iPhoto中,然后从我的OS X iPhoto中拖放它们,然后放入模拟器中。它将出现拖放照片到模拟器目前只能从OS X iPhoto工作。: - (

最简单的解决方案是在模拟器上登录iCloud,然后使用iCloud传输驱动器中的任何文件,包括照片。

使用您的电脑只需通过电子邮件发送图像 打开ios模拟器,然后打开电子邮件并下载图像 只需单击并按住图像上的鼠标,从选项中就会显示出来 然后,它会自动保存到你的ios模拟器的图片库