如何解决错误:“沙盒与Podfile.lock不同步”

32

当我在Flutter中添加新插件时,在我的runner xcode中出现以下错误:

沙盒与Podfile.lock不同步。运行 'pod install' 或更新您的CocoaPods安装

我已经安装了CocoaPods并进行了更新,尝试运行pod install但仍无法解决问题,请帮忙。

7个回答

39

我的情况是由于一个本地的仅适用于Android的插件引起的。我为该插件创建了一个虚拟的Podspec文件,然后运行:

cd ios
flutter pub get
pod install
pod update
似乎我现在需要在每个xcode项目清理后执行这些步骤。
$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, v1.17.4, on Mac OS X 10.15.6 19G73, locale en-AU)
 
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
[✓] Android Studio (version 4.0)

@MebroukiAmine 你在执行pod install时有没有遇到任何错误?先尝试删除pods文件夹。 - Michael Ribbons
只需要运行以下命令:cd ios flutter pub get pod install pod update,这样就可以解决我的问题了。 - pa1nd

27

在我的情况下,我清理了构建并更新了Pod文件,但仍然有一些警告,但这些可以忽略:

> flutter clean
> flutter pub get
> cd ios
> pod update

这对我有用,但稍作修改
flutter clean flutter pub get cd ios rm Podfile.lock pod install
注意:在Mac上,这个方法在Android Studio的终端中无效,但在终端应用程序中有效。
- henriquedn

8
如果您在M1 Mac上遇到此问题并在运行pod update时出现错误,则我的解决方法是将终端设置为使用Rosetta打开,然后不要从VS Code中运行该命令,而是在默认终端中运行。

enter image description here

之后它成功更新了,我就能够构建我的应用程序了。


1
打开Finder中的iOS文件夹。
  • 删除Podlock文件
  • 删除pods文件夹
然后在iOS文件夹中打开终端。
  • 运行pod install
然后打开Runner.xcworkspace并运行应用程序,它将正常工作。

0
在我的情况下,出现了这个消息,因为我没有 Podfile 或 Podfile.lock。奇怪的是,通过运行 flutter pub get,它也没有生成它们。然后我决定向我的 pubspec.yaml 添加一个随机包(我还没有添加任何包),比如 shared preferences,再次运行 flutter pub get,这次会创建 Podfile 和 Podfile.lock。奇怪的行为,但这就是我解决问题的方式。

0

如果您在2022年遇到此问题

那么首先从您的iOS目录中备份整个runner文件夹,然后删除整个iOS目录,然后运行'flutter create .'这个命令将重新创建您的项目以适用于所有平台。运行此项目后,转到新创建的iOS文件夹,然后删除runner文件夹并粘贴之前备份的runner文件夹,享受您的问题已经解决了。


您的答案可以通过附加支持性信息来改进。请 [编辑] 添加更多详细信息,例如引用或文档,以便他人可以确认您的答案正确。您可以在 帮助中心 中找到有关编写好答案的更多信息。 - Community

-1

遇到了同样的错误,并通过以下两个简单的步骤解决了它:

  1. 仅删除 Podfile.lock 文件
  2. 运行 flutter clean && flutter run

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接