首页 > 解决方案 > Firebase Flutter iOS 初始化问题

问题描述

嗨,我在尝试初始化 firebase 时遇到了以下问题。

未处理的异常:[core/not-initialized] Firebase 未正确初始化。您是否已将“GoogleService-Info.plist”文件添加到项目中?

我的代码是:

await Firebase.initializeApp();

我正在使用单独的 Google Service Info Plist 进行开发和生产。

在此处输入图像描述

因此,我在 Xcode 中的Target > Build Phase > Run New Script Phase下使用以下脚本将 plist 复制到主目录。

if [ "${CONFIGURATION}" == "Debug-prod" ] || [ "${CONFIGURATION}" == "Release-prod" ] || [ "${CONFIGURATION}" == "Release" ]; then
cp -r "${PROJECT_DIR}/Runner/Firebase/prod/GoogleService-Info.plist" "${PROJECT_DIR}/Runner/GoogleService-Info.plist"

echo "Production plist copied"

elif [ "${CONFIGURATION}" == "Debug-dev" ] || [ "${CONFIGURATION}" == "Release-dev" ] || [ "${CONFIGURATION}" == "Debug" ]; then

cp -r "${PROJECT_DIR}/Runner/Firebase/dev/GoogleService-Info.plist" "${PROJECT_DIR}/Runner/GoogleService-Info.plist"

echo "Development plist copied"
fi

任何帮助,将不胜感激 :)

标签: iosxcodefirebaseflutterplist

解决方案


您必须添加一些默认的 GoogleService-Info.plist 到${PROJECT_DIR}/Runner/GoogleService-Info.plist(最好的选择是开发者)

开始构建后,您的脚本将覆盖该脚本。

XCode 项目必须知道GoogleService-Info.plist存在于项目中,您的脚本是关于覆盖它的内容


推荐阅读