谁能告诉我如何在 iPhone 模拟器中添加视频,以便我可以测试我正在开发的一些应用程序?预先感谢!
非常简单,您只需将任何 .MOV 文件拖到模拟器中即可。现在它将在 Safari 浏览器中打开。左上角有一个“完成”按钮。您只需按一下即可 您可以按“共享”按钮,然后只需选择“保存视频”选项即可完成。现在在您的应用程序中播放它。 :)
我对图像做了同样的操作,将视频拖放到 iOS 模拟器上,不仅仅是照片的应用程序,而且在拖放时任何应用程序都可以在其上运行。
第 1 步:拖放。
第2步:iOS模拟器打开safari播放视频文件。
第 3 步:单击共享图标以在操作列表中获取“保存视频”选项。
但是多次点击“保存视频”操作却没有任何反应,也没有任何内容添加到相册中。有什么想法吗?甚至尝试将视频文件复制粘贴到模拟器的 DCIM 路径。
好吧,试试这个:
- (void) downloadVideo {
NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://sepwww.stanford.edu/sep/jon/trash/poolwaves.mov"]];
您可以将 temp.mov 更改为 temp.m4v 以将视频保存为 m4v。
NSString *tempPath = [NSString stringWithFormat:@"%@/temp.mov", NSTemporaryDirectory()];
[imageData writeToFile:tempPath atomically:NO];
UISaveVideoAtPathToSavedPhotosAlbum (tempPath, self, @selector(video:didFinishSavingWithError: contextInfo:), nil);
}
- (void) video: (NSString *) videoPath
didFinishSavingWithError: (NSError *) error
contextInfo: (void *) contextInfo {
NSLog(@"Finished saving video with error: %@", error);
}
如果您更改电影文件的网址,这应该可以很好地工作...... 电影保存在这个目录中:
/Library/Application Support/iPhone Simulator/4.3.2/Media/DCIM
但你是对的,如果我将文件复制到其中,它不会显示在模拟器中
问候
简短回答:
长答案:
Xcode 4.6.3 和 MacOS 10.8.4 仅供参考。还没有在 Xcode 5 上尝试过。
您可以通过在 appdelegate.m 中添加这两行代码来添加您的文件
NSString *path = [[NSBundle mainBundle] pathForResource:@"sample_iTunes" ofType:@"mov"];
UISaveVideoAtPathToSavedPhotosAlbum(path, self, @selector(video:didFinishSavingWithError:contextInfo:), nil);`
对于 2022 年,如果您尝试直接从下载文件夹导入 .mov 文件,模拟器会给出模糊错误(PHPhotosErrorDomain 错误 -1)。要解决此问题,请将视频移动到根 /~ 目录并将其拖到模拟器中。
XCode 版本 - 13.2
模拟器 iOS 版本 - 15.2
转到以下路径和过去的视频
/用户/“用户名”/库/开发者/CoreSimulator/Devices/11BFF1F0-2A2B-409A-9727-3267D71E10D4/data/Media
如果您询问如何将视频添加到您的应用程序中,请使用
MediaPlayer.h
lib 显示视频的简单方法。
// fileURL is a NSURL made from file path in app bundle
MPMoviePlayerController *mp = [[MPMoviePlayerController alloc] initWithContentURL: fileURL];
[[mp view] setFrame:CGRectMake(0,0,100,100)];
[mp play];
您应该为 mp 对象设置许多参数:缩放、控件等
您需要在应用程序包本身中添加视频。稍后您可以将其复制到文档目录中。
已经有一段时间了...拖放不知何故对我的视频文件不起作用(对于 .mov 和 .mp4)。所以我采用了其中一个答案中的 obj-c 代码
let path = Bundle.main.path(forResource: "Video", ofType: "mov")!
UISaveVideoAtPathToSavedPhotosAlbum(path, nil, nil, nil)
2024从你的Mac进行屏幕录制,然后将其拖放到模拟器中,它将显示在模拟器的照片应用程序下
打开 safari 浏览器并在模拟器中下载视频
在 2022 年,只需将视频(例如 Mac 上的屏幕录制)拖放到 iPhone 模拟器中,它就会出现在照片中