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_auth
和google_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 数组字符串