Flutter_tts 无法在 iOS 上运行
Posted
技术标签:
【中文标题】Flutter_tts 无法在 iOS 上运行【英文标题】:Flutter_tts doesn't run on iOS 【发布时间】:2019-02-28 19:06:34 【问题描述】:我正在尝试使用 Flutter_tts 库编写一个在颤振上朗读文本的应用程序,它适用于 android,但是当我尝试在 ios 设备上运行它时出现错误:
=== BUILD TARGET Runner OF PROJECT Runner WITH CONFIGURATION Debug === ld:警告:找不到自动链接库“swiftDispatch” ld:警告:找不到自动链接库“swiftCoreMedia” ld:警告:找不到自动链接库“swiftAVFoundation” ld:警告:找不到自动链接库“swiftFoundation” ld:警告:找不到自动链接库“swiftsimd” ld:警告:找不到自动链接库“swiftObjectiveC” ld:警告:找不到自动链接库“swiftCoreFoundation” ...我之前将我的构建系统切换到旧版构建系统并将我的“Swift 语言版本”指定为“Swift 4.2”
当我将构建系统切换到“新构建系统”时,它给了我
Xcode 的输出: ↳ 错误:多个命令产生'/Users/dimazhylko/FlutterProjects/flutter_tts_plugin_test/build/ios/Debug-iphonesimulator/Runner.app/Frameworks/Flutter.framework': 1) 目标 'Runner' 具有从 '/Users/dimazhylko/FlutterProjects/flutter_tts_plugin_test/ios/Flutter/Flutter.framework' 到 '/Users/dimazhylko/FlutterProjects/flutter_tts_plugin_test/build/ios/Debug-iphonesimulator/Runner.app 的复制命令/Frameworks/Flutter.framework' 2) 该命令取决于 Target 'Runner' 中的命令:脚本阶段“[CP] Embed Pods Frameworks” 警告:未运行 swift-stdlib-tool:ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES 已启用,但产品类型“com.apple.product-type.library.static”不是包装器类型。 (在目标“Pods-Runner”中) 警告:忽略重复的输出文件:'/Users/dimazhylko/FlutterProjects/flutter_tts_plugin_test/build/ios/Debug-iphonesimulator/Runner.app/Frameworks/Flutter.framework'(在目标'Runner'中) 注:使用新的构建系统注:规划构建注:构建构建描述
降级 Swift 版本也无济于事。
我还能尝试什么来解决这个问题? 或者你可以推荐另一个库?(我已经尝试过Tts,它看起来不是一个好的选择,因为它只适用于flutter v“0.5.0”(Dart 版本2.0.0
I also get this warning when I open Xcode
【问题讨论】:
github.com/flutter/flutter/issues/20685 【参考方案1】:在创建没有 -i swift 标志的颤振项目时,这是一个已知问题。我在这里概述了它similar issue
flutter create -i swift my_app
作为一种可怕的解决方法,您可以使用 -i swift 标志创建一个新的 Flutter 项目,然后从当前项目中复制您的文件。
【讨论】:
结合这两个建议,我构建了它,但现在我有“等待应用程序启动超时”【参考方案2】:右击Runner,添加一个新的Swift文件。 XCode 会询问您是否要添加桥接头。接受并重新编译。
【讨论】:
【参考方案3】:这是一个已知问题https://github.com/flutter/flutter/issues/20685
https://github.com/flutter/flutter/issues/20685#issuecomment-421511890
有两种解决方法:
选项 1:使用旧版构建系统。 如 @gi097 所述,打开ios/Runner.xcworkspace
,并将构建系统更改为Legacy Build System
。 选项 2:使用新的 Xcode 10 构建系统。打开
ios/Runner.xcworkspace
在项目导航器侧边栏中选择Runner
项目。 在主视图中,选择Runner
目标,然后选择Build Phases
选项卡。 展开Embed Frameworks
阶段并从嵌入式框架列表中选择Flutter.framework
。 单击-
将Flutter.framework
从列表中删除(请务必保留App.framework
)。
并且应该已经在dev
和/或master
频道中修复。
【讨论】:
我都试过了,但没有帮助。在最后一次尝试中,我得到:“clang: error: linker command failed with exit code 1 (use -v to see invocation) note: Using new build systemnote: Planning buildnote: Constructing build description” 抱歉,没有其他想法。以上是关于Flutter_tts 无法在 iOS 上运行的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Google Colab 上安装 Pytorch Lightning Flash
有没有办法将flutter_tts文件保存到firebase存储?
Flutter 运行 - 无法构建 iOS 应用程序 - 命令 PhaseScriptExecution 失败,退出代码为非零