Flutter - 使用 google_sign_in 库时未找到 <Flutter/Flutter.h>

Posted

技术标签:

【中文标题】Flutter - 使用 google_sign_in 库时未找到 <Flutter/Flutter.h>【英文标题】:Flutter - <Flutter/Flutter.h> not found when using the google_sign_in library 【发布时间】:2019-09-22 22:43:17 【问题描述】:

我在为 ios 编译应用程序时遇到了这个问题

这是整个堆栈跟踪:

在调试模式下在 iPhone Xs Max 上启动 lib/main.dart...正在运行 pod 安装...正在运行 Xcode 构建...Xcode 构建完成。 2,4s Failed to build iOS app Xcode build 的错误输出:↳ ** 构建失败 **

Xcode 的输出:↳ === 使用 CONFIGURATION Debug 构建项目 Pod 的 FirebaseAuth === 在 /Users/danielec/.pub-cache/hosted/pub.dartlang.org/google_sign_in-4.0.1+3/ios/Classes/GoogleSignInPlugin.m:5 包含的文件中: /Users/danielec/.pub-cache/hosted/pub.dartlang.org/google_sign_in-4.0.1+3/ios/Classes/GoogleSignInPlugin.h:5:9: 致命错误:找不到“Flutter/Flutter.h”文件 #进口 ^~~~~~~~~~~~~~~~~~~ 产生 1 个错误。

我尝试重新安装firebase_authgoogle_sign_in,删除并重新安装cocoapods,我不知道还能做什么,因为以前有人遇到过这个问题吗?

版本:

Cocoapods:1.6.1 firebase_auth: ^0.8.4+5 google_sign_in:^4.0.1+3

【问题讨论】:

你试过直接运行pod install 吗?此外,如果您尝试在真实设备上运行,您应该检查您的签名配置。 我手动尝试了 pod install 但没有成功,我在模拟器中运行 尝试从你的 Podfile # platform :ios, '9.0'取消注释这一行 【参考方案1】:

这对我有用。

删除你的.pubcache文件夹,你可以在你安装flutter的地方找到它(如果你不确定在哪里,你可以运行“which flutter”)它通常是一个隐藏文件,所以你必须启用你的设置来显示隐藏文件(shift + Command + 句号可在 Mac 上显示隐藏文件)。

在终端中运行“flutter clean”(确保删除构建文件夹) 从 ios 文件夹中删除符号链接、pod 和 podfile.lock 删除您的 pubspec.lock 文件 再次构建

如果你仍然有问题,你可以更进一步

    使用“flutter downgrade”降级 Flutter flutter pub 缓存修复 从 ios/Flutter 目录中删除 Generated.xcconfig pod 安装(从 ios 目录) 再次构建

【讨论】:

【参考方案2】:

我有同样的情况,我不知道发生了什么,但我的解决方案是:

创建一个备份“iOS/Runner”plist 特别是如果你有一些权限或其他东西......

之后在控制台中写入:flutter create。 .. 再创建一次您的 iOS 文件夹,显然 iOS 中的某些文件因某些 ¿ 错误而损坏?..

啊,也很重要,打开 Xcode 而不是复制文件 googleservices.json,您需要将文件放入运行程序文件中(不要复制!!)

不要忘记flutter clean 并重启无效的android studio。 祝你好运!

【讨论】:

【参考方案3】:

我在稳定频道上使用 Flutter 时遇到了类似的问题。在 iOS 模拟器上运行时,我开始收到此错误:/[pathto]/Flutter/testtwo/ios/Runner/GeneratedPluginRegistrant.h:8:9: fatal error: 'Flutter/Flutter.h' file not found #import <Flutter/Flutter.h>

唯一有帮助的是将频道更改为 beta(我实际上尝试在那里运行并且它有效)然后回到 stable 以及pub upgrade .请参阅下面的命令序列。请注意,切换到频道后,您需要等待 Flutter 进行构建(我花了几分钟):

flutter pub upgrade, flutter channel beta, flutter clean, 成功运行应用程序...在 iOS 上。 flutter channel stable, flutter clean.

希望对你有帮助。

【讨论】:

以上是关于Flutter - 使用 google_sign_in 库时未找到 <Flutter/Flutter.h>的主要内容,如果未能解决你的问题,请参考以下文章

断言失败:在 Flutter 中使用 Navigator.popUntil() 时 !_debugLocked 不正确

Flutter 在应用程序购买中我应该在 _verifyPurchase() 中包含啥

Flutter 2 构建项目:错误:没有为类“_LoadingIndicatorState”定义方法“SpinKitPouringHourglass”

Flutter 如何使用 JSON 从 Rest API 获取 List<String> _list 数组字符串

Flutter 的 TextPainter 抛出一个 '!_needsLayout': is not true。例外

Flutter_设置APP图标和启动图