如何将图像添加到 iOS 模拟器

Posted

技术标签:

【中文标题】如何将图像添加到 iOS 模拟器【英文标题】:How do I add images to the iOS Simulator 【发布时间】:2012-11-06 16:14:30 【问题描述】:

我有 xcode 4.5.1 并想将照片添加到 iphone 6.0 模拟器但找不到它。我有一个名为 iphone 模拟器的文件夹,但它只包含 4.3.1。这可能是因为几个月前我将应用程序支持中的几乎所有内容都拖到了我的外部硬盘驱动器以节省一些内存。现在,当我将它拖回来时,它包含我之前使用的 4.3.1。我必须下载新的东西还是我应该怎么做? 提前致谢!

【问题讨论】:

【参考方案1】:
    运行模拟器 在模拟器上运行 Safari 将图片拖到模拟器上运行的 Safari 上,这会打开图片。 点击并按住图片,或点击底部工具栏中的分享图标。 您会收到一条提醒,询问您是否要将图像存储到手机中

【讨论】:

实际上,您可以跳过第 2 步,它会为您打开 Safari,无论当前活动的应用是什么(如果有)。 其实你可以直接进入照片应用【参考方案2】:

有一种比 Abizern 描述的稍快的方法

    打开模拟器 将图片直接拖到上面(无需启动 Safari.app) Safari 将启动 长按图像并将其保存到模拟器相机胶卷中

iOS9 更新:本地存储的图片可以直接拖到模拟器上,无需显式保存。

请注意,您的图像存储在这里(6.1 与模拟器版本匹配):

~/Library/Application Suppport/iPhone Simulator/6.1/Media/DCIM/100APPLE

不幸的是,您不能只将图像添加到该文件夹​​,因为它们将被忽略,因为它们不在模拟器的图像数据库中。但是,您可以通过 Finder 获取所有存储的图像。

【讨论】:

在模拟器版本>= 7.0,这在第一次不起作用。但是一旦你按照'Abizern'所说的那样完成之后就会起作用。 :) @KrishnaRajSalim:实际上,使用我的 ios 9 模拟器,这仍然有效。可以像描述的那样保存远程图像,并且可以将本地图像拖到模拟器上,然后显示在照片中(无需显式保存)【参考方案3】:

使用 Xcode 6 更容易。

1.- 将图像拖放到模拟器中,图像将直接出现在原生 照片 应用中。

【讨论】:

【参考方案4】:

您现在也可以通过命令行使用 smctl addmedia 命令执行此操作。

$ xcrun simctl addmedia
Usage: simctl addmedia <device> <path> [... <path>]

You can specify multiple files including a mix of photos and videos.

You can also specify multiple live photos by providing the photo and video files. They will automatically be discovered and imported correctly.

注意(根据命令行工具的安装方式,您可能不需要在 simctl 前面添加 xcrun)。

要找到正确的设备 ID,请运行 simctl list devices

$ xcrun simctl list devices
== Devices ==
-- iOS 10.2 --
    iPhone 5 (D226CF12-6782-4D7D-9C00-2D662CF4022C) (Shutdown)
    iPhone 5s (34E0E0F8-3429-4D91-B038-ECF4FD0F3311) (Shutdown)
    iPhone 6 (9C772A68-34E3-4F3F-981C-543DE6D5D985) (Shutdown)
    iPhone 6 Plus (7848A50E-BFB5-4F19-BB31-4A56CA78AA2C) (Shutdown)
    iPhone 6s (12CF89BA-C8B2-4837-B4EB-FB24DFF1622C) (Shutdown)
    iPhone 6s Plus (3EE6CA84-8F12-4A5E-A31D-EF4BF3CCBDB2) (Shutdown)
    iPhone 7 (1EB3CE5D-849C-491C-9CAA-5E97B1BD89CE) (Booted)
    iPhone 7 Plus (94FEFD36-6EFF-4762-BD21-79B1F958F6C6) (Shutdown)
    iPhone SE (E8E8ECEB-34C0-44F0-B92E-57DCA91024F1) (Shutdown)
    iPad Retina (0DA5BF39-3DC7-49B3-BE9B-2FA756FCA725) (Shutdown)
    iPad Air (DAB9C2D3-8EBC-41DC-9C2D-0ECEC1D2FAE3) (Shutdown)
    iPad Air 2 (1E2DA170-5C2E-413C-831B-FA65524643D3) (Shutdown)
    iPad Pro (9.7 inch) (99F931A9-0708-4637-9294-6420DC7A149C) (Shutdown)
    iPad Pro (12.9 inch) (08CD02EB-C44A-4183-961A-EED89FF1C225) (Shutdown)
-- tvOS 10.1 --
    Apple TV 1080p (7EE393F2-C83E-467F-9802-3E5BFE7C2CA9) (Shutdown)
-- watchOS 3.1 --
    Apple Watch - 38mm (B8969533-D7CD-462E-9E76-511C08E8CC8E) (Shutdown)
    Apple Watch - 42mm (E16167D9-1007-438B-8812-CD97CE6ABECA) (Shutdown)
    Apple Watch Series 2 - 38mm (F59C0BB1-B4D0-47DD-B927-1BFD78DD78C0) (Shutdown)
    Apple Watch Series 2 - 42mm (7FE3AADD-94AB-46B9-A057-78F20F030999) (Shutdown)

所以要向我的 iPhone 7 模拟器添加视频,我会使用:

$ xcrun simctl addmedia 1EB3CE5D-849C-491C-9CAA-5E97B1BD89CE <path to video>

【讨论】:

谢谢!我正在寻找一种以编程方式执行此操作的方法,以便运行自动化不需要手动将图像文件转储到每个环境的 sim 中。 现场照片的最佳答案! 如果你在设备列表中迷路了(像我一样),需要找到活跃的:xcrun simctl list devices | grep Booted【参考方案5】:

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

我创建了一个项目,可以非常轻松地将资产导入模拟器:MBAssetsImporter。

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

【讨论】:

很棒的小应用程序,这无疑是批量添加照片和视频的最佳方式。【参考方案6】:

使用 Xcode 6+(iOS 模拟器 8.1 及更高版本)附带的新 iOS 模拟器会更容易。现在您只需将一张或多张照片拖到 iOS 模拟器窗口上,而不是打开 Safari,而是打开照片应用程序,并立即将所有拖入的照片添加到设备中。

【讨论】:

【参考方案7】:

这很简单。只需在您的 iPhone 模拟器中转到照片并将图像从您的位置(图像 Eg.Desktop 所在的位置)拖动到 IphoneSimulator。它将这些图片添加到相册中。

【讨论】:

【参考方案8】:

另一种简单的方法,在带有 XCode 10 的 High Sierra 中,运行模拟器,在照片中选择您的照片,进入共享菜单并选择“模拟器”。

瞧!

【讨论】:

以上是关于如何将图像添加到 iOS 模拟器的主要内容,如果未能解决你的问题,请参考以下文章

如何将一些照片添加到模拟器照片库?

将图像添加到 M MessageView 控制器在 IOS5 中可以正常工作,但在 IOS 6 中不能

添加图像 iOS xCode

如何在UI测试中将照片添加到模拟器的相机胶卷

将图像添加到 iPhone 模拟器会导致错误(PHPhotosErrorDomain 错误 -1。)

ios 7.1 将歌曲添加到音乐库