在 iOS 中运行 flutter 应用程序时出现错误

rvn*_*gwn 10 dart flutter flutter-dependencies flutter-layout flutter-ios

Launching lib/main.dart on iPhone 12 Pro Max in debug mode...\n
Run Code Online (Sandbox Code Playgroud)\n

运行 pod install...\nCocoaPods\' 输出:\n\xe2\x86\xb3\nCDN: trunk 相对路径:CocoaPods-version.yml 存在!返回本地,因为检查仅在存储库更新中执行

\n

CocoaPods 的错误输出:\n\xe2\x86\xb3\n警告:CocoaPods 要求您的终端使用 UTF-8 编码。\n考虑将以下内容添加到 ~/.profile:

\n
    export LANG=en_US.UTF-8\n    \n/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/unicode_normalize/normalize.rb:141:in `normalize\': Unicode Normalization not appropriate for ASCII-8BIT (Encoding::CompatibilityError)\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:166:in `unicode_normalize\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:166:in `installation_root\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:226:in `podfile_path\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/user_interface/error_report.rb:105:in `markdown_podfile\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/user_interface/error_report.rb:30:in `report\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/command.rb:66:in `report_error\'\n    from /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:396:in `handle_exception\'\n    from /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:337:in `rescue in run\'\n    from /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:324:in `run\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/command.rb:52:in `run\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/bin/pod:55:in `<top (required)>\'\n    from /usr/local/bin/pod:23:in `load\'\n    from /usr/local/bin/pod:23:in `<main>\'\n/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/unicode_normalize/normalize.rb:141:in `normalize\': Unicode Normalization not appropriate for ASCII-8BIT (Encoding::CompatibilityError)\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:166:in `unicode_normalize\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:166:in `installation_root\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:226:in `podfile_path\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/config.rb:205:in `podfile\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/command.rb:160:in `verify_podfile_exists!\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/command/install.rb:46:in `run\'\n    from /Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/lib/cocoapods/command.rb:52:in `run\'\n    from /Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.0/bin/pod:55:in `<top (required)>\'\n    from /usr/local/bin/pod:23:in `load\'\n    from /usr/local/bin/pod:23:in `<main>\'\n
Run Code Online (Sandbox Code Playgroud)\n

运行 pod install 时出错\n在 iPhone 12 Pro Max 上启动应用程序时出错。

\n

在此输入图像描述

\n

在此输入图像描述

\n

Pic*_*hio 16

这似乎是 Cocoapods v 1.11.0 中的一种错误/不兼容问题

为了解决这个问题,我按照以下步骤操作,效果非常好:/sf/answers/4835356081/

简而言之,请按照以下步骤操作:

  1. 在您的终端中,在 ios 文件夹中输入

    gem list --local | grep cocoapods

  2. 记下上一个命令的输出是什么。它看起来像这样(请忽略各个条目附近的版本,这是我的输出,我已经使用版本 1.10.1):

cocoapods (1.10.1) cocoapods-core (1.10.1) cocoapods-deintegrate (1.0.5) cocoapods-downloader (1.5.1) cocoapods-plugins (1.0.0) cocoapods-search (1.0.1) cocoapods-trunk (1.6.0) cocoapods-try (1.2.0)

  1. 一一启动命令, sudo gem uninstall X 用 cocoapods 组件的名称替换“X”,不带版本。最后你应该得到这个:

sudo gem uninstall cocoapods sudo gem uninstall cocoapods-core sudo gem uninstall cocoapods-deintegrate sudo gem uninstall cocoapods-downloader sudo gem uninstall cocoapods-plugins sudo gem uninstall cocoapods-search sudo gem uninstall cocoapods-trunk sudo gem uninstall cocoapods-try

确保包含第 n.1 点中列出的所有组件,以避免脏状态

  1. 使用命令 sudo gem install cocoapods -v 1.10.1 获取正确的版本。

所有的荣誉都归功于埃斯特万·洛佩兹,我在顶部链接的答案的作者。


小智 16

这个问题出现在 Cocoapods 1.11.0 中,许多人已经注意到回滚到 1.10.2 修复了该问题。但最初的问题来自于终端中设置的错误区域设置。它必须是基于 UTF-8 的语言环境。

这里的第二个答案为我解决了这个问题。

如前所述,只需运行

export LC_ALL=en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)

在你的终端中,错误应该消失。考虑将其添加到您的.zshrc文件中,以便它在每个会话中自动发生。