在您的项目中找不到有效的GoogleService-Info.plist

时间:2017-07-26 04:57:21

标签: ios swift firebase firebase-authentication

当我使用Xcode 9 beta 4运行我的swift 3.2代码时,这是我得到的错误:

*** Terminating app due to uncaught exception 'com.firebase.core', reason: '[FIRApp configure]; (FirebaseApp.configure() in Swift) could not find a valid GoogleService-Info.plist in your project. Please download one from https://console.firebase.google.com/.'

我已经有一个GoogleService-Info.plist文件,其名称与它应该完全相同,并且有效。

对firebase有什么试验吗?

22 个答案:

答案 0 :(得分:132)

从项目中删除Google-Info.plist文件,然后尝试从项目文件夹的选项菜单中添加该文件。

答案 1 :(得分:15)

我有同样的问题。

点击项目中的Googleservice-info.plist,然后在检查器中查看应用的目标会员资格。这为我解决了。

这就是导致崩溃并删除文件并再次添加的原因,这是上面的答案建议的另一种方式。但实际原因是这个,这是解决问题的正确方法。

请参阅下图以获得进一步说明:

enter image description here

答案 2 :(得分:6)

将文件添加到项目后,您可能还需要将其添加到编译源部分中的构建阶段

答案 3 :(得分:3)

不幸的是,幸运的是,指定的错误非常准确。现在只有一个选项可用。 i。,正确地将Google-Info.plist文件放入项目中。尝试删除并再次添加。另外,检查是否选择了目标。

答案 4 :(得分:2)

确保您的文件名正确为“GoogleService-Info.plist”。任何其他名称都会导致问题。重新启动 XCode,你就可以开始了。

答案 5 :(得分:1)

转到构建阶段并在副本包资源中添加文件。多数民众赞成。

答案 6 :(得分:1)

  1. 确保文件名正确无误,即:“GoogleService-info.plist
  2. 在项目名称下的mac finder中将其添加到项目中,然后将其拖到项目中以引用它。
  3. 最后,正如Silvajee所提到的,转到plist文件的file inspector并勾选target membership下方的框以将其作为project的一部分包含在内。

答案 7 :(得分:1)

enter image description here

在构建阶段中将GoogleService-Info.plist添加为上述屏幕截图:

答案 8 :(得分:1)

我们必须确保Xcode中的完整路径是正确的。最好从一开始就添加它。如果已经完成,请跳至步骤5。

  1. 退出Xcode。
  2. 确保文件名正确,“ GoogleService-Info.plist”。
  3. 将.plist文件添加到项目文件夹。与Podfile,.xcworkspace等处于同一级别。
  4. 打开Xcode,在Project Navigator上标识.plist文件。如果不存在,请右键单击,然后单击将新文件添加到“ [项目名称]” 。确保点击添加到目标选项下的项目名称。
  5. 在Project Navigator上,单击GoogleService-Info.plist。从右侧导航器中选择文件检查器。确保完整路径正确。如果没有,请单击文件夹图标,然后在项目文件中选择.plist文件。
  6. 构建。如果仍然无法使用,请退出Xcode并再次构建。

答案 9 :(得分:1)

如果您有多个环境(生产,开发,暂存),则每个环境都需要一个不同的Google.plist。

它们都必须具有相同的名称。

要解决此问题,请为每个文件创建一个文件夹(每个环境一个),然后将其放在相应的文件夹中。

当您将文件从Finder拖到Xcode时,请确保为 Target Membership

下的每个文件选择正确的环境。

这可以解决问题,并允许您分别构建环境。尤其是在每个环境都有不同的Bundle ID的情况下。

答案 10 :(得分:1)

这些步骤解决了我的问题。 FOllow这些。 1.您必须将GoogleService-Info.plist文件拖放到项目中的共享资源等位置。成功添加文件后,还应确保将其包含在项目构建中:

2.在项目的“构建阶段”部分中,仔细检查您的项目是否包含GoogleService-Info.plist。

3.Double检查文件名。文件名必须完全是GoogleService-Info.plist,常见的拼写错误包括GoogleServices-Info.plist和GoogleService-info.plist - 区分大小写并且只有名称才有效。

答案 11 :(得分:0)

1 - 打开" GoogleService-Info.plist"并改变任何或者和

2 - 重新打开xamarin溶液 3 - 它应该现在可以工作

答案 12 :(得分:0)

干净然后建立几次为我工作。

答案 13 :(得分:0)

对于那些使用Ionic的人,请确保先在Xcode中打开.xcworkspace文件,然后将GoogleService-info.plist文件拖到Resources文件夹中。

由于某些原因,大多数在线教程都无法很好地说明这一部分。

向Shahzaib Maqbool大喊大叫,因为他的评论帮助我从我的项目中得到了这一点。

答案 14 :(得分:0)

我通过从System.IO.FileNotFoundException: Could not load file or assembly 'System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. File name: 'System.Numerics.Vectors, Version=4.1.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' at System.SpanHelpers.SequenceEqual(Byte& first, Byte& second, NUInt length) at System.MemoryExtensions.Equals(ReadOnlySpan`1 span, ReadOnlySpan`1 other, StringComparison comparisonType) at ServiceStack.Text.Json.JsonTypeSerializer.EatValue(ReadOnlySpan`1 value, Int32& i) at ServiceStack.Text.Common.DeserializeTypeRefJson.StringToType(ReadOnlySpan`1 strType, TypeConfig typeConfig, EmptyCtorDelegate ctorFn, KeyValuePair`2[] typeAccessors) at ServiceStack.Text.Common.DeserializeType`1.StringToTypeContext.DeserializeJson(ReadOnlySpan`1 value) at ServiceStack.Text.Json.JsonReader.<>c__DisplayClass3_0.<GetParseSpanFn>b__0(ReadOnlySpan`1 v) at ServiceStack.Text.JsonSerializer.DeserializeFromSpan(Type type, ReadOnlySpan`1 value) at ServiceStack.Text.DefaultMemory.Deserialize(MemoryStream ms, Boolean fromPool, Type type, DeserializeStringSpanDelegate deserializer) at ServiceStack.Text.DefaultMemory.<DeserializeAsync>d__34.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at ServiceStack.Host.RestHandler.<CreateRequestAsync>d__16.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at ServiceStack.Host.RestHandler.<CreateRequestAsync>d__15.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at ServiceStack.Host.RestHandler.<ProcessRequestAsync>d__14.MoveNext()中删除项目并从项目中删除Firebase来解决了该问题。在我再次将项目添加到GoogleService-Info.plist并添加了对我有用的新Firebase文件之后。

答案 15 :(得分:0)

发生此错误的次数超过了1次,下载了Google服务。当我们第一次从Firebase下载时,就像GoolgeService-Info.Plist。如果您再次下载,它将GoogleService-Info(1).Plist附带。我们需要从(1)中删除GoogleService-Info(1).Plist

答案 16 :(得分:0)

以下设置可以修复我的编译器失败 1.添加到“复制文件” 2.不添加到“复制捆绑包资源”

enter image description here

答案 17 :(得分:0)

删除以前安装的所有其他“ GoogleService-Info.plist”文件。就我而言,当我安装它时,它的名称为“ GoogleService-Info.plist-2”,因为我在同一文件夹中安装了另一个文件。看来这会给Firebase造成混乱。我删除了所有旧文件,并将当前文件的名称完全更改为“ GoogleService-Info.plist”。有效。

答案 18 :(得分:0)

  1. 实际上,当GoogleService-Info.plist文件实际上不在我们的项目文件夹中时会发生此错误,但它只是对该文件的引用进行了下载。因此解决方案是删除对此文件的引用,然后通过拖放或使用&#34; Add Files ...&#34;再次将其添加到项目文件夹中。右键单击选项到项目文件夹。还要重新检查文件是否正在查找项目文件夹目标,否则将再次出现错误。

  2. 不要忘记检查您的&#34; GoogleService-Info.plist&#34;文件名与错误中显示的名称相同,否则重命名。

答案 19 :(得分:0)

在我的情况下,当我在project.pbxproj中合并冲突时出现了问题

GoogleService-Info.plist->在右窗格中没有选择“目标”成员身份,我无法选择它,因为project.pbxproj已损坏(即使构建成功)

我必须回滚project.pbxproj,然后在GoogleService-Info.plist中选择了Target成员身份。

确保合并冲突后project.pbxproj没有损坏(与attempted to initialize an object with an unknown UUID有关)

答案 20 :(得分:0)

您的配置可能没有正确完成

对于Flutter

安装Firebase配置文件

您必须使用Xcode将文件添加到项目中(通过文件系统手动添加不会将文件链接到项目)。使用Xcode打开项目的ios/{projectName}.xcworkspace文件。右键单击Xco​​de中左侧项目导航中的Runner,然后选择“添加文件”,如下所示:

enter image description here

选择您下载的GoogleService-Info.plist文件,并确保启用了“如果需要复制项目”复选框:

enter image description here

答案 21 :(得分:0)

重新启动Xcode对我有用,上述选项均无效。