现在我们可以向App Store提交应用的视频预览。根据苹果公司的说法,我们应该在iOS8设备和OSX 10.10设备上这样做。问题是你必须拥有所有不同的设备(4英寸、4.7英寸、5.5英寸和iPad)。

还有别的选择吗?

我想拍一段模拟器的视频。问题是,当以100%分辨率显示时,设备屏幕比我的全高清显示器还大。任何解决方案,可以捕捉视频从模拟器的全分辨率?

编辑: 因为很多人都在回答我没有问的问题让我说 记录一个设备大小并缩放它不是我要求的 我问的不是如何录制应用预览 -我问的不是你怎么做预告片;

我想问的是,如果模拟器无法在屏幕上显示,你能否以100%分辨率录制视频?


当前回答

以下是一个有效的解决方案,不需要300美元(FinalCut Pro),但它需要ScreenFlow (AppStore中的ScreenFlow应用程序)(100美元):

把你的设备连接到运行优胜美地的Mac电脑上 启动Quicktime并选择File/Newi Movie Recording 启动ScreenFlow并捕获您的视频 在ScreenFlow中编辑视频(添加文本,音乐等) 裁剪视频,使其只包含设备屏幕 导出苹果要求大小的视频(例如,1334x750)

其他回答

我也面临着同样的问题。它有一个非常简单的解决方案,对我来说很管用。只需遵循以下步骤:

1.在iMovie中制作一个预览视频。

2.使用共享文件选项导出视频。选择1920x1080,因为它可以用于5S和6 +。

3.下载Appshow for Mac by techsmith (https://www.techsmith.com/techsmith-appshow.html)。它是专门为制作应用程序预览视频。但我不推荐它制作视频,而只是用于导出。

4.选择一个新的应用预览视频,并通过选择更少的帧来自定义它,你可以稍后删除。

5.将iMovie视频导入这个模板。在右上角,你可以选择任何你想要的分辨率,appshow有应用程序预览所需的所有分辨率。

6.最后,只需选择设备并导出所选分辨率的视频。

苹果建议在实际设备上这样做,并提供了如何在iOS和OS X上使用QuickTime和iMovie来做到这一点的指南: https://developer.apple.com/app-store/app-previews/imovie/Creating-App-Previews-with-iMovie.pdf

简介:

捕捉屏幕录音与QuickTime播放器

使用Lightning电缆将iOS设备连接到Mac。 打开QuickTime播放器。 选择“文件>新电影录制”。 在出现的窗口中,选择您的iOS设备作为摄像头和麦克风输入源。

用iMovie创建应用预览

导入屏幕录音

接下来,将用QuickTime Player捕获的屏幕记录文件导入iMovie。 在iMovie:

选择“文件>导入媒体”。 在出现的窗口中,选择屏幕录制文件。

创建一个应用预览项目

要开始一个新的应用程序预览项目,选择文件>新应用程序预览。时间轴将出现,您可以在其中添加和安排剪辑来创建预览。

使用Xcode 12.5的新版本,您可以简单地使用⌘+ r记录模拟器屏幕。有关详细信息,请访问这里。

我发现的最好的工具是Appshow。访问http://www.techsmith.com/techsmith-appshow.html(我不为他们工作)

对于Xcode 8.2或更高版本

您可以使用xcrun simctl(一个命令行实用程序来控制模拟器)拍摄模拟器的视频和屏幕截图

在模拟器上运行应用程序 打开终端 执行命令 截图 xxrun simctl IO启动截图<filename>。<文件扩展名> 例如: xrun simctl io启动截图myScreenshot.png 拍一段视频 xrun simctl io boot recordVideo <filename>. txt<文件扩展名> 例如: xrun simctl io启动recordVideo appVideo.mov 按“ctrl + C”停止录像。

所创建文件的默认位置是当前目录。

Xcode 11.2及以后版本提供了额外的选项。

来自Xcode 11.2 Beta版本说明

simctl视频记录现在产生更小的视频文件,支持HEIC 压缩,并利用硬件编码支持的地方 可用。此外,可以在iOS 13上录制视频,tvOS 13, watchOS 6设备已恢复。

你可以使用额外的标志:

xcrun simctl io --help
Set up a device IO operation.
Usage: simctl io <device> <operation> <arguments>

...

    recordVideo [--codec=<codec>] [--display=<display>] [--mask=<policy>] [--force] <file or url>
        Records the display to a QuickTime movie at the specified file or url.
        --codec      Specifies the codec type: "h264" or "hevc". Default is "hevc".

        --display    iOS: supports "internal" or "external". Default is "internal".
                     tvOS: supports only "external"
                     watchOS: supports only "internal"

        --mask       For non-rectangular displays, handle the mask by policy:
                     ignored: The mask is ignored and the unmasked framebuffer is saved.
                     alpha: Not supported, but retained for compatibility; the mask is rendered black.
                     black: The mask is rendered black.

        --force      Force the output file to be written to, even if the file already exists.

    screenshot [--type=<type>] [--display=<display>] [--mask=<policy>] <file or url>
        Saves a screenshot as a PNG to the specified file or url(use "-" for stdout).
        --type       Can be "png", "tiff", "bmp", "gif", "jpeg". Default is png.

        --display    iOS: supports "internal" or "external". Default is "internal".
                     tvOS: supports only "external"
                     watchOS: supports only "internal"

                     You may also specify a port by UUID
        --mask       For non-rectangular displays, handle the mask by policy:
                     ignored: The mask is ignored and the unmasked framebuffer is saved.
                     alpha: The mask is used as premultiplied alpha.
                     black: The mask is rendered black.

现在你可以在jpeg中截图,带掩码(用于非矩形显示)和一些其他标志:

xrun simctl IO启动截图——type=jpeg——mask=黑色截图