Когда я запускаю свой быстрый код 3.2 с Xcode 9 beta 4, я получаю вот такую ​​ошибку:

*** Завершение работы приложения из-за неперехваченного исключения 'com.firebase.core', причина: '[FIRApp configure]; (FirebaseApp.configure () в Swift) не удалось найти действительный GoogleService-Info.plist в вашем проекте. Пожалуйста, загрузите один из https://console.firebase.google.com/.'

У меня уже есть файл GoogleService-Info.plist с точно таким же названием, и он действителен.

Есть ли пробная версия firebase или что-то в этом роде?

Ответы (25)

Удалите файл Google-Info.plist из своего проекта и попробуйте добавить его из меню параметров папки проекта.

РЕДАКТИРОВАТЬ: вот как вы удаляете файл plist Ошибка Xcode 10: несколько команд производят

Перейдите к этапам сборки и добавьте файл в ресурсы пакета копирования. Вот и все.

1 - откройте "GoogleService-Info.plist" и измените любое или на и

2 - повторно открыть решение xamarin 3 - теперь должно работать

Если у вас несколько сред (производственная, разрабатываемая, промежуточная), вам потребуется отдельный Google.plist для каждой из них.

Все они должны иметь одно и то же имя.

Чтобы обойти это, создайте папки для каждого из этих файлов (по одной для каждой среды) и поместите их в соответствующие папки.

Когда вы перетаскиваете файлы из Finder в Xcode, убедитесь, что выбрали правильную среду для каждого из них под Target Membership

Это поможет и позволит вам создавать окружения отдельно. Особенно, если у каждой среды свой идентификатор пакета.

Настройка ниже может исправить ошибку моего компилятора 1. Добавить в «Копировать файлы» 2. Не добавлять в «Копировать ресурсы пакета»

enter image description here

enter image description here

Добавьте GoogleService-Info.plist на этапах сборки, как показано на скриншоте выше:

Я использую FirebaseUI и получаю немного другую ошибку при нажатии кнопки «Войти через Google»:

*** Завершение работы приложения из-за неперехваченного исключения «NSInternalInconsistencyException», причина: «Идентификатор клиента OAuth не найден. Убедитесь, что в консоли Firebase включен вход через Google. Возможно, вам придется загрузить новый файл GoogleService-Info.plist после включения входа в Google. '

Что исправило эту проблему для меня, так это изменение этой строки (которая, похоже, устарела)

[[FUIGoogleAuth alloc] init]]
От

до

[[FUIGoogleAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]]

при построении списка провайдеров

NSArray> *providers = @[
  [[FUIGoogleAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]],
  [[FUIPhoneAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]]
];

У меня сработало пару раз очистку и сборку.

Убедитесь, что имя вашего файла правильное: "GoogleService-Info.plist". Любое другое имя вызовет проблемы. Перезапустите XCode, и все готово.

После добавления файла в проект вам может также потребоваться добавить его в Build Phases в разделе Compile Sources.

удалите все остальные файлы "GoogleService-Info.plist", которые были ранее установлены. в моем случае, когда я его установил, он назывался «GoogleService-Info.plist-2», так как у меня в той же папке был установлен другой файл. похоже, это создаст путаницу для firebase. Я удалил все старые файлы и точно изменил имя текущего на "GoogleService-Info.plist". это сработало.

К сожалению или к счастью, указанная ошибка очень точна. Сейчас доступен только один вариант. т.е. правильно разместите файл Google-Info.plist в вашем проекте. Попробуйте удалить и добавить еще раз. Также проверьте, выбрана ли цель.

У меня сработал перезапуск Xcode, ни один из вышеперечисленных вариантов не сработал.

Данная ошибка возникает при загрузке сервиса Google более 1 раза. Когда мы загружаем в первый раз из firebase, это похоже на GoolgeService-Info.Plist. Если вы скачаете снова, появится GoogleService-Info (1) .Plist. Нам нужно удалить (1) из GoogleService-Info (1) .Plist.

Для тех, кто по ошибке использует Xamarin (вам следует избегать использования этого инструмента): откройте файл проекта как код и убедитесь, что в файле есть тег импорта BundleResource, а не None (красный - правильный): enter image description here

Я решил проблему, удалив проект из Firebase и удалил GoogleService-Info.plist из проекта. После того, как я снова добавил проект в Firebase и добавил новый файл GoogleService-Info.plist, у меня работал.

  1. На самом деле эта ошибка возникает, когда файл GoogleService-Info.plist фактически не находится в папке нашего проекта, а просто имеет ссылку на тот файл, в который он загружен. Поэтому решение состоит в том, чтобы удалить ссылку на этот файл и снова добавить его в папку проекта, перетащив его или используя параметр «Добавить файлы ...», щелкнув правой кнопкой мыши папку проекта. Также еще раз проверьте, находится ли файл в папке вашего проекта, иначе ошибка возникнет снова.

  2. Не забудьте проверить, что имя вашего файла "GoogleService-Info.plist" совпадает с именем, указанным в сообщении об ошибке, в противном случае переименуйте его.

Мы должны убедиться, что полный путь правильный в Xcode. Лучше бы добавить с самого начала. Если вы уже это сделали, перейдите к шагу 5.

  1. Выйти из Xcode.
  2. Убедитесь, что имя файла правильное: "GoogleService-Info.plist".
  3. Добавить файл .plist в папку проекта. Одинаковый уровень с Podfile, .xcworkspace и т. Д.
  4. Откройте Xcode, определите файл .plist в Project Navigator. Если его там нет, щелкните правой кнопкой мыши и выберите Добавить новый файл в «[Project Name]». Обязательно щелкните название проекта ниже Добавить в список.
  5. В Project Navigator щелкните GoogleService-Info.plist. В правом навигаторе выберите File Inspector. Убедитесь, что указан правильный полный путь. В противном случае щелкните значок папки и выберите файл .plist внутри файла проекта.
  6. Сборка. Если по-прежнему не работает, выйдите из Xcode и выполните сборку снова.

Другая проблема, которую легко упустить из виду, - это когда у вас загружено несколько файлов PLIST, поэтому файл не имеет точного имени 'GoogleService-Info.plist'.

У меня было несколько копий, поэтому я пытался использовать 'GoogleService-Info.plist (2)', который выдает ту же ошибку, поэтому убедитесь, что сам файл назван так, как задумано!

Для тех из вас, кто работает с Ionic, обязательно сначала откройте файл .xcworkspace в Xcode, а затем перетащите файл GoogleService-info.plist в папку Resources.

Большинство онлайн-руководств по какой-то причине плохо объясняют эту часть.

Спасибо Шахзаибу Макбулу, потому что его комментарий помог мне получить это для моего проекта.

В моем случае что-то пошло не так, когда я объединил конфликты в project.pbxproj

GoogleService-Info.plist -> не было выбрано целевое членство на правой панели, и я не мог выбрать его, потому что project.pbxproj был поврежден (хотя сборка прошла успешно)

Мне пришлось откатить project.pbxproj, и после этого в GoogleService-Info.plist было выбрано целевое членство.

Убедитесь, что project.pbxproj не поврежден после конфликтов слияния (это как-то связано с попыткой инициализировать объект с неизвестным UUID)

Эти шаги решили мою проблему. Следуйте за ними. 1. Вы должны перетащить файл GoogleService-Info.plist в свой проект в такое место, как Общие ресурсы. Когда вы успешно добавили файл, вы также должны обязательно включить его в сборку проекта:

2. Дважды проверьте, что в разделе «Build Phases» вашего проекта ваш проект включает GoogleService-Info.plist.

3. Дважды проверьте имя файла. Имя файла должно точно соответствовать GoogleService-Info.plist. Распространенные орфографические ошибки включают GoogleServices-Info.plist и GoogleService-info.plist - с учетом регистра и только с точным именем.

У меня была такая же проблема.

Щелкните Googleservice-info.plist в своем проекте и проверьте Целевое членство для приложения в инспекторе. Это исправило это для меня.

Это причина этого сбоя, и удаление файла и повторное добавление - это еще один способ сделать, как предложено в ответах выше. Но настоящая причина в этом, и это правильный способ ее решить.

Пожалуйста, обратитесь к изображению ниже для дальнейшего пояснения:

enter image description here

  1. Убедитесь, что имя файла правильное, например: «GoogleService-info.plist»
  2. Добавьте его в проект в mac finder под именем проекта, а затем перетащите его в проект, чтобы ссылаться на него.
  3. Наконец, как упомянул Сильваджи, перейдите к файловому инспектору для файла plist и отметьте поле под целевое членство, чтобы включить его как часть проекта .

Возможно, ваша конфигурация выполнена некорректно

Для Flutter

Установка файла конфигурации Firebase

Вы должны добавить файл в проект с помощью Xcode (добавление вручную через файловую систему не будет связывать файл с проектом). Используя Xcode, откройте файл проекта ios / {projectName} .xcworkspace. Щелкните правой кнопкой мыши Runner в левой части навигации по проекту в Xcode и выберите «Добавить файлы», как показано ниже:

enter image description here

Выберите файл GoogleService-Info.plist, который вы загрузили, и убедитесь, что установлен флажок «Копировать элементы при необходимости»:

enter image description here

2022 WebDevInsider