我试图使用UIImagePickerController与UIImagePickerControllerSourceTypePhotoLibrary,但它说,“没有照片”。模拟器从哪里获得图像?我应该在哪里复制图像,以便它们在模拟器中显示?
当前回答
对于iOS 8,如果不需要保留照片捕捉日期和位置,只需将照片文件放到模拟器中即可。
要保留照片元数据,请执行以下操作:
复制照片文件到:/Users/{USER}/Library/Developer/CoreSimulator/Devices/{UDID}/data/Media/DCIM/100Apple 删除(或重命名)文件夹:/Users/{USER}/Library/Developer/CoreSimulator/Devices/{UDID}/data/Media/photoData 重新启动模拟器
注意:您需要用您的用户名替换{USER},用模拟器的UDID替换{UDID}。要从终端找到模拟器的UDID,请运行“xcrun simctl list”。
其他回答
方法1(最简单的方法):如果你的图像在Mac上
您可以将图像从Mac上的Finder拖到模拟器,它就会保存到“已保存的照片”相册中。
方法2:如果它在任何URL
将图片从网页保存到“照片”应用程序
将指针放在要保存的图像上,并按住鼠标按钮或触摸板。 当菜单出现时,单击Save Image将图像保存到iOS模拟器中的Photos应用程序中。 图片被保存到“照片”应用程序的“已保存照片”相册中。
以防有人在模拟器中寻找关于复制和粘贴的苹果文档。
对于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
最简单的解决方案是在模拟器上登录iCloud,然后使用iCloud传输驱动器中的任何文件,包括照片。
使用Xcode 6+ (iOS Simulator 8.1及以上版本)附带的新iOS模拟器,这要容易得多。现在你所要做的就是把一张或多张照片拖到iOS模拟器窗口上,然后不是打开Safari浏览器,而是打开照片应用程序,并立即将所有拖进来的照片添加到设备中。
如果你需要导入不止一、两张照片,那就看看我写的这篇文章。它描述了一种简单的方法来执行批量导入照片,适用于iOS 4.x。
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- Ios模拟器:如何关闭应用程序
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- Swift:声明一个空字典
- 在成功提交我的应用程序后,“太多符号文件”
- 首先添加一个UIView,甚至是导航栏
- 我如何改变UIButton标题颜色?
- 在Swift中如何调用GCD主线程上的参数方法?
- NSLayoutConstraints是可动画的吗?
- iOS -构建失败,CocoaPods无法找到头文件
- Xcode 4挂在“附加到(应用程序名称)”
- CFNetwork SSLHandshake iOS 9失败
- 请求失败:不可接受的内容类型:文本/html使用AFNetworking 2.0
- 缺少推荐的图标文件-该包不包含iPhone / iPod Touch的应用程序图标,像素为“120x120”,png格式