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


当前回答

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

其他回答

为此我编写了一个bash脚本。 检查链接[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

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

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

共享->模拟器

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

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

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

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

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

试试我做的这个应用。下载代码并在模拟器https://github.com/cristianbica/CBSimulatorSeed中运行

从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模拟器,然后打开电子邮件并下载图像 只需单击并按住图像上的鼠标,从选项中就会显示出来 然后,它会自动保存到你的ios模拟器的图片库