6

我想将视频推送到 iPhone 模拟器中以测试 UIImagePickerController 中的视频拾取。有可能这样做吗?如果可能的话,你能给我一些建议吗?

谢谢。

4

5 回答 5

15

这里建议的其他方法都不适合我,但我找到了一种适用于模拟器最新版本(6.1)的方法:

  1. 启动模拟器并从主屏幕导航到照片应用程序。
  2. .m4v将文件从文件系统拖放到模拟器窗口中。该视频现在将在 Safari 中播放。
  3. 点击左上角的“完成”。
  4. 点击“分享”按钮并选择“保存到相机胶卷”

你完成了!

于 2013-08-20T15:27:34.547 回答
12

我让它变得更容易了:首先,我用 QuickTime X 录制了一个示例截屏视频并将其保存到 iPhone 上。然后,我将它复制到'~/Library/Application Support/iPhone Simulator/User/Media/DCIM/100APPLE/VID_0001.m4v'(也许你需要创建 100APPLE 目录)。重新启动 iPhone 模拟器,并在 Photos.app 的“已保存照片”下看到了我的视频。当我使用 UIImagePickerController 时,该视频就在那里,我可以选择它。

如果有帮助,我会在 10.6.2 上使用 SDK 3.2.1。

于 2009-11-16T13:55:01.037 回答
2

请按照以下步骤操作;

  1. /Users/UserName/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE
  2. 复制您的视频文件,将其重命名为VID_0001.m4vVID_0001.mov
  3. PhotoData从中删除/Users/UserName/Library/Application Support/iPhone Simulator/6.1/Media/PhotoData
  4. 重新启动模拟器,视频将显示在已保存的照片下
于 2013-07-31T06:05:44.217 回答
2

您可以子类UIImagePickerController化以覆盖其行为并提供您自己的视图。如果您这样做,您可以调用imagePickerController:didFinishPickingMediaWithInfo:并提供您自己的预先录制的视频。如果您包含从 iPhone 3GS 实际录制的视频,您得到的行为将与实际设备的行为非常相似。

当然,始终始终始终在发货前在真实设备上进行测试!

我们CLLocationManager以非常相似的方式使用 的子类来提供更好的位置模拟。

于 2009-08-17T13:37:46.183 回答
0

简短的回答:

  1. 将您的视频文件放入 ~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE/ 并可能删除 Media 中的 PhotoData 文件。

长答案:

  1. 确保iPhone 支持您的电影文件类型。
  2. 在您的用户下打开库。(YourUserName/Library) 如果找不到该文件,则它是隐藏的。使其可见或使用终端。
  3. 如sogosha所说,导航到~/Library/Application Support/iPhone Simulator/。如果您有多个 iOS 模拟器,请选择您当前正在开发的那个。(我有 5.0、5.1、6.0 和 6.1)
  4. 导航到 ~/Library/Application Support/iPhone Simulator/6.1/Media/DCIM/100APPLE/ 并放入您的视频文件。如果 100APPLE 目录不存在,请创建它。
  5. 有时您必须删除 Navigate to ~/Library/Application Support/iPhone Simulator/6.1/Media/ 中的 PhotoData 文件,以强制模拟器识别新文件,因为您没有通过正常方式添加它。

Xcode 4.6.3 和 MacOS 10.8.4 仅供参考。Xcode 5 没试过。

于 2013-06-27T23:06:46.520 回答