1

Xcode 8.2 の変更を確認しているときに、ターミナルを使用してシミュレーターを記録できるようになったことがわかりました。

そのため、この Apple ドキュメントで説明されているように、iOS シミュレーターからビデオを録画しようとしています。

コマンド ラインを使用したスクリーンショットの撮影またはビデオの録画

指示:

xcrun simctl io 起動された recordVideo demoVideo.mp4

エラー:

2016-12-20 15:44:27.206 simctl[6434:984477] *** Assertion failure in +[SimDisplayVideoWriter videoWriter], /BuildRoot/Library/Caches/com.apple.xbs/Sources/CoreSimulator/CoreSimulator-338.16/SimulatorKit/SimDisplayVideoWriter.m:48
2016-12-20 15:44:27.207 simctl[6434:984477] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Failed to create metal device for video writer.'
*** First throw call stack:
(
    0   CoreFoundation                      0x00007fffa07f90db __exceptionPreprocess + 171
    1   libobjc.A.dylib                     0x00007fffb548ba2a objc_exception_throw + 48
    2   CoreFoundation                      0x00007fffa07fdc32 +[NSException raise:format:arguments:] + 98
    3   Foundation                          0x00007fffa2266d50 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 195
    4   SimulatorKit                        0x000000010a248c53 +[SimDisplayVideoWriter videoWriter] + 1015
    5   SimulatorKit                        0x000000010a2499e5 +[SimDisplayVideoWriter videoWriterForURL:fileType:] + 316
    6   simctl                              0x000000010a168a00 simctl + 31232
    7   simctl                              0x000000010a166bee simctl + 23534
    8   simctl                              0x000000010a170d52 simctl + 64850
    9   libdispatch.dylib                   0x00007fffb5d3fef7 _dispatch_call_block_and_release + 12
    10  libdispatch.dylib                   0x00007fffb5d370b8 _dispatch_client_callout + 8
    11  libdispatch.dylib                   0x00007fffb5d39029 _dispatch_root_queue_drain + 917
    12  libdispatch.dylib                   0x00007fffb5d38c47 _dispatch_worker_thread3 + 99
    13  libsystem_pthread.dylib             0x00007fffb5f84712 _pthread_wqthread + 1299
    14  libsystem_pthread.dylib             0x00007fffb5f841ed start_wqthread + 13
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Abort trap: 6

iOS シミュレーターとアプリケーションの両方が正常に動作しています。このエラーはターミナルにのみ表示されます。

Xcode 8.2 を使用しています。iPhone 7, 7 Plus, SE with iOS 10.2 の Simulator で試しました。

インストールおよびコンポーネントの詳細や必要性はありますか?

4

2 に答える 2

1

ビデオ録画は、Metal をサポートする Mac でのみサポートされます。システムがメタルをサポートしていない場合は、そのメッセージとともに中止が表示されます。ええ、そのエラー メッセージをもっとユーザー フレンドリーにする必要があります。

サポートされているシステムのリストを確認するには、https://support.apple.com/en-us/HT205073をチェックしてください。

于 2016-12-24T03:43:19.840 に答える