“不支持的操作方法签名”。 FolioReader Swift,错误
Posted
技术标签:
【中文标题】“不支持的操作方法签名”。 FolioReader Swift,错误【英文标题】:"Unsupported action method signature". FolioReader Swift , Error 【发布时间】:2021-07-12 05:56:31 【问题描述】:请帮助我使用 FolioReaderKit Swift 解决此错误 在此处输入图片描述
【问题讨论】:
感谢您的回答,但仍然出现同样的问题,请帮助我 FolioReaderKit 是一个存档存储库,这意味着原始维护者不再支持它。据我所知,它使用的 UIWebView 已被弃用,不能再在 ios 应用程序中使用。解决此问题的范围超出了 SO 问题,因为它需要重写依赖项以使用 WKWebView。 【参考方案1】:在我的应用程序中使用 Folioreader 时,我也遇到了同样的崩溃。我已通过在我的代码中进行以下更改来修复它。
在 FolioReaderAudioPlayer.swift 文件中。更新这 5 个方法。
@objc func pause() -> MPRemoteCommandHandlerStatus
playing = false
if !isTextToSpeech
if let player = player , player.isPlaying
player.pause()
else
if synthesizer.isSpeaking
synthesizer.pauseSpeaking(at: .word)
return .success
@objc func togglePlay() -> MPRemoteCommandHandlerStatus
isPlaying() ? pause() : play()
return .success
@objc func play() -> MPRemoteCommandHandlerStatus
if book.hasAudio
guard let currentPage = self.folioReader.readerCenter?.currentPage else return .commandFailed
currentPage.webView?.js("playAudio()")
else
self.readCurrentSentence()
return .success
@objc func playPrevChapter() -> MPRemoteCommandHandlerStatus
stopPlayerTimer()
// Wait for "currentPage" to update, then request to play audio
self.folioReader.readerCenter?.changePageToPrevious
if self.isPlaying()
self.play()
else
self.pause()
return .success
@objc func playNextChapter() -> MPRemoteCommandHandlerStatus
stopPlayerTimer()
// Wait for "currentPage" to update, then request to play audio
self.folioReader.readerCenter?.changePageToNext
if self.isPlaying()
self.play()
return .success
【讨论】:
以上是关于“不支持的操作方法签名”。 FolioReader Swift,错误的主要内容,如果未能解决你的问题,请参考以下文章