Как хранить изображения и видео в пользовательской папке только в ios swift3 - PullRequest
0 голосов
/ 25 октября 2018

Я использую приведенный ниже исходный код для хранения изображений и видео в пользовательской папке.Работает нормально, но моя проблема в том, что эти изображения и видео также хранятся в папке «Все фотографии» на iPhone.Как я могу сохранить его только в пользовательской папке?Может ли кто-нибудь помочь мне выполнить эту задачу?

Я называю этот класс как

func fileOutput(_ output: AVCaptureFileOutput, didFinishRecordingTo outputFileURL: URL, from connections: [AVCaptureConnection], error: Error?) {
    print("FINISHED \(String(describing: error ))")
    // save video to camera roll
    if error == nil {
        print("---------------FilePath--------------\(outputFileURL.path)")

        print(self.videoPreviewUiimage(fileName: outputFileURL)!)


        self.iconImage.image  = self.videoPreviewUiimage(fileName: outputFileURL)!


          MyAwesomeAlbum.shared.save(image: self.iconImage.image!)
        MyAwesomeAlbum.shared.saveMovieToLibrary(movieURL: outputFileURL)

        self.handleCaptureSession()

    }
}

func saveMovieToLibrary(movieURL: URL) {

    self.checkAuthorizationWithHandler { (success) in
        if success, self.assetCollection != nil {

            PHPhotoLibrary.shared().performChanges({

                if let assetChangeRequest = PHAssetChangeRequest.creationRequestForAssetFromVideo(atFileURL: movieURL) {
                    let assetPlaceHolder = assetChangeRequest.placeholderForCreatedAsset
                    if let albumChangeRequest = PHAssetCollectionChangeRequest(for: self.assetCollection) {
                        let enumeration: NSArray = [assetPlaceHolder!]
                        albumChangeRequest.addAssets(enumeration)
                    }

                }

            }, completionHandler:  { (success, error) in
                if success {
                    print("Successfully saved video to Camera Roll.")
                } else {
                    print("Error writing to movie library: \(error!.localizedDescription)")
                }
            })


        }
    }

}

func save(image: UIImage) {
    self.checkAuthorizationWithHandler { (success) in
        if success, self.assetCollection != nil {
            PHPhotoLibrary.shared().performChanges({
                let assetChangeRequest = PHAssetChangeRequest.creationRequestForAsset(from: image)
                let assetPlaceHolder = assetChangeRequest.placeholderForCreatedAsset
                if let albumChangeRequest = PHAssetCollectionChangeRequest(for: self.assetCollection) {
                    let enumeration: NSArray = [assetPlaceHolder!]
                    albumChangeRequest.addAssets(enumeration)
                }

            }, completionHandler: { (success, error) in
                if success {
                    print("Successfully saved image to Camera Roll.")
                } else {
                    print("Error writing to image library: \(error!.localizedDescription)")
                }
            })

        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...