Отображение файла epub в SwiftUI с помощью FolioReader

#swiftui #epub

Вопрос:

Я пытаюсь отобразить книгу epub в FolioReader с помощью SwiftUI. В проекте UIKit я включил читателя в метод viewDidAppear, и это хорошо сработало. Используя приведенный ниже код, я получаю ошибку: «Завершение работы приложения из-за неперехваченного исключения «NSInternalInconsistencyException», причина: «Неподдерживаемая подпись метода действия. Необходимо вернуть MPRemoteCommandHandlerStatus или принять обработчик завершения в качестве второго аргумента.'»

Как правильно отображать Epub с помощью SwiftUI ? Заранее спасибо!

 class FolioController : UIViewController{
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(true)
        let config = FolioReaderConfig()
        let folioReader = FolioReader()
        let bookPath2 = Bundle.main.path(forResource: "The Silver Chair", ofType: "epub")
        folioReader.presentReader(parentViewController: self, withEpubPath: bookPath2!, andConfig: config, shouldRemoveEpub: false)
    }
}

struct FolioViewController: UIViewControllerRepresentable{
    func makeUIViewController(context: Context) -> UIViewController {
        var newController = FolioController()
        return newController;
    }
    
    func updateUIViewController(_ uiViewController: UIViewController, context: Context) {
    }
    
    
    typealias UIViewControllerType = UIViewController
    
}

 

Комментарии:

1. Ваша ошибка не связана с SwiftUI, вам не хватает обработчика завершения в строке, которая выдает ошибку. Либо измените вызов метода, упомянутого в ошибке, либо добавьте обработчик завершения.