You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

iOS项目中Google Sign-In与Firebase通知的.plist文件选择问题

解决Google Sign-In与Firebase通知的Plist冲突及URL Schema崩溃问题

别纠结二选一啦!你只需要保留Firebase提供的GoogleService-Info.plist(你提到的googleinfo.plist应该是文件名打错了,标准命名是这个),因为这份文件已经包含了Google Sign-In和Firebase通知所需的所有配置项,原来单独用于Sign-In的那份plist完全可以删除。

崩溃的核心问题是URL Schema没配置对,按下面的步骤修复就行:

  • 第一步:清理冗余文件
    删除原来Google Sign-In对应的.plist,只保留Firebase的GoogleService-Info.plist,确保它已经正确添加到Xcode项目中(勾选了对应的Target)。

  • 第二步:补全URL Schema配置

    1. 打开Firebase的GoogleService-Info.plist,找到REVERSED_CLIENT_ID这个键,复制它对应的字符串值。
    2. 回到Xcode,选中你的项目Target,进入Info标签页,找到URL Types区域。
    3. 点击+号新增一个URL Type,把刚才复制的REVERSED_CLIENT_ID值粘贴到URL Schemes输入框里,其余字段保持默认即可。
  • 第三步:调整初始化代码
    确保你的Google Sign-In初始化代码是基于Firebase配置的,比如在AppDelegateapplication(_:didFinishLaunchingWithOptions:)里:

    FirebaseApp.configure()
    guard let clientID = FirebaseApp.app()?.options.clientID else { return true }
    let signInConfig = GIDConfiguration(clientID: clientID)
    GIDSignIn.sharedInstance.configuration = signInConfig
    

    这样就不需要手动单独设置Sign-In的clientID,直接复用Firebase配置里的信息,避免配置不一致。

这么操作之后,Google Sign-In和Firebase通知就能正常共存了——Firebase的plist本身就是为整合Google服务设计的,只要补全URL Schema这个关键配置,就不会再崩溃啦。

内容的提问来源于stack exchange,提问作者Jasmine Chaniara

火山引擎 最新活动