Конфигурация приложения Flutter iOS с различными проектами firebase показывает ошибку GOOGLE_APP_ID в файле служб Google из среды сборки

#ios #firebase #flutter

#iOS #firebase #flutter

Вопрос:

У меня есть 3 разные схемы с различными проектами firebase, которыми я хочу управлять с помощью моего xcode, я добавил все конфигурации и скрипты, но в конце я получаю эту ошибку

Не удалось получить GOOGLE_APP_ID в файле служб Google из среды сборки

Я перепробовал множество решений, таких как добавление временного файла в каталог проекта, а также настройка приложения firebase с параметрами, но ничего не работает. Ниже приведен мой скрипт для копирования файла в direcotry

 if [ “${CONFIGURATION}” == “Debug-Production” ] || [ “${CONFIGURATION}” == “Release-Production” ] || [ “${CONFIGURATION}” == “Release” ]|| [ “${CONFIGURATION}” == “Debug” ]; then
cp -r ${PROJECT_DIR}/Firebase/Production/GoogleService-Info.plist   ${PROJECT_DIR}/Runner/GoogleService-Info.plist 
echo "production plist Copied"
elif [ “${CONFIGURATION}” == “Debug-Beta” ] || [ “${CONFIGURATION}” == “Release-Beta” ]; then
cp -r ${PROJECT_DIR}/Firebase/Beta/GoogleService-Info.plist ${PROJECT_DIR}/Runner/GoogleService-Info.plist
elif [ “${CONFIGURATION}” == “Debug-Test” ] || [ “${CONFIGURATION}” == “Release-Test” ]; then
cp -r ${PROJECT_DIR}/Firebase/Test/GoogleService-Info.plist ${PROJECT_DIR}/Runner/GoogleService-Info.plist
fi
  

Вот мой порядок этапов сборки
Раздел конфигурации Firebase запускает мой сценарий копирования

Любая помощь будет оценена.

Ответ №1:

Хорошо, для работы почти целый день и после попытки всех решений я нашел тот, который не упоминается ни в одном ответе.

  • Добавьте правильный Googleservice-info.plist в свой проект и проверьте копировать файлы и цель
  • В скрипте измените cp на cp -r и удалите имя файла с конца при его вставке. это должно быть похоже ${PROJECT_DIR}/Runner/ .
  • Каждый раз, когда ваши скрипты запускаются, он заменяет файл, но не права, которые у него есть.

Я надеюсь, что это сработает и для вас.