私はiOS開発とSwiftには比較的新しいですが、私が働いているアプリでは、画面上にアクティビティを記録し、その結果のビデオを保存することになっていますカメラのロールに。 ReplayKitを使用しています。今取り組んでいる何ReplayKitビデオをアプリ内ボタン付きカメラロールに貼り付けよう
:
は、これは私がstartRecording()
機能は、「スタート」というボタンによって運営されており、stopRecording()
関数が呼び出されたことにより、録画を開始し、記録 を終了したコードです「停止」と表示されています。
var preview : RPPreviewViewController?
func startRecording() {
let recorder = RPScreenRecorder.sharedRecorder()
recorder.startRecordingWithMicrophoneEnabled(true) {
[unowned self] (error) in
print(recorder)
if let unwrappedError = error {
print(unwrappedError.localizedDescription)
}
}
}
func stopRecording() {
let recorder = RPScreenRecorder.sharedRecorder()
recorder.stopRecordingWithHandler {
[unowned self] (preview, error) in
if let unwrappedError = error {
print(unwrappedError.localizedDescription)
}
if let unwrappedPreview = preview {
print("end")
unwrappedPreview.previewControllerDelegate = self
unwrappedPreview.modalPresentationStyle=UIModalPresentationStyle.FullScreen
self.presentViewController(unwrappedPreview, animated: true, completion: nil)
}
}
画面が正常に記録されます。私はstopRecording()関数を呼び出す "Finish"と言うボタンがあります。そのボタンをクリックすると、録画したビデオを再生し、ユーザーが手動でビデオを編集して保存できるプレビューが表示されます。
私は何をしようとしている:私はカメラロールにあるようボタンは単に映像を保存するようにする必要があり
。私は、ユーザが編集して手動で保存することを可能にするプレビュー画面をバイパスしたい。これは可能ですか?もしそうなら、どのように問題にアプローチしますか?
プレビューのタイプはRPPreviewViewController?
です。可能性としては試してみると、保存するための動画にアクセスできないようです。 ReplayKitはUIKitの拡張版なので、私は
UISaveVideoAtPathToSavedPhotosAlbum(_ videoPath: String, _ completionTarget: AnyObject?, _ completionSelector: Selector, _ contextInfo: UnsafeMutablePointer<Void>)
メソッドを使用しようとしましたが、これらの属性は存在しません!
これ以上情報が必要な場合は、お知らせください。私がばかだと私に教えてください!これは私の最初の投稿ですので素敵です!ありがとう。