프로젝트에서 유효한 GoogleService-Info.plist를 찾을 수 없습니다.


83

Xcode 9 베타 4로 신속한 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 파일이 이미 있습니다.

파이어베이스에 대한 재판이 있습니까?


11
검사 대상 및 또한 당신의 프로젝트 폴더에있는 물리적 위치를 확인 오른쪽 패널에 PLIST 파일을 클릭하여 확인되지 않았거나
Prashant Tukadiya

GoogleService-Info.plist프로젝트에서 제거 하고 다시 추가하십시오.
산 제이 샤

@MikeAlter xcode 9 베타 4를 실행하고 있다는 사실과 관련이 있습니까?
아담 eliezerov

베타는 버그가 많았습니다. 아주 간단하게 이미지, 스크립트 등에 적용되는 대상에 항목을 자동으로 추가하지 않는 경우가 많습니다 . 아주 간단히-오른쪽에서 "정보"를 선택하고 "대상에 추가"상자를 클릭합니다. X9 릴리스에서 모두 수정 된 것 같습니다.
Fattie

답변:


213

Google-Info.plist프로젝트 에서 파일을 제거하고 프로젝트 폴더의 옵션 메뉴에서 추가해보십시오.

편집 : 이것은 plist 파일을 제거하는 방법입니다. Xcode 10 오류 : 여러 명령이 생성됩니다.


4
예, 이것이 해결책입니다. Xcode 9 베타의 버그처럼 보입니다.
Adagio

10
또한 Google-Info.plist파일에 올바른 대상 멤버십이 있는지 확인하십시오 .
Tom Spee

파일을 끌어다 놓을 수없는 버그입니까, 아니면 "파일 추가"방법이 일반적인 끌어서 놓기와 다른 것입니까?
André Kuhlmann

1
@ AndréKuhlmann 파일을 드래그 앤 드롭하는 것이 버그 인 것 같습니다. plist 파일을 프로젝트의 루트 디렉토리로 드래그했을 때 파일 위치는 Downloads 폴더의 경로입니다. 그래서 작동하려면 "파일 추가"를해야했습니다.
govgo

고쳤습니다, Thankyou (Y)
Muhammad SaLman

23

나는 같은 문제가 있었다.

프로젝트에서 Googleservice-info.plist를 클릭하고 인스펙터에서 앱의 Target Membership을 확인하십시오. 그것은 나를 위해 그것을 고쳤습니다.

이것이이 충돌의 원인이며 파일을 제거하고 다시 추가하는 것은 위의 답변에서 제안한 또 다른 방법입니다. 그러나 실제 원인은 이것이고 이것이 그것을 해결하는 올바른 방법입니다.

자세한 내용은 아래 이미지를 참조하십시오.

여기에 이미지 설명 입력


16

프로젝트에 파일을 추가 한 후에 는 컴파일 소스 섹션 의 빌드 단계 에 추가해야 할 수도 있습니다 .


1
이것은 나를 위해 그것을 고쳤습니다! 고맙습니다
Gary Mansted

1
나도 고정
4bottiglie

1
이것은 나를 위해 그것을 고쳤습니다! 당신에게 앤드류 감사
아만 펜디 교수

4

여러 환경 (프로덕션, 개발, 스테이징)이있는 경우 각각에 대해 다른 Google.plist가 필요합니다.

그들은 모두 같은 이름을 가져야합니다.

이 문제를 해결하려면 이러한 각 파일 (각 환경에 대해 하나씩)에 대한 폴더를 만들고 해당 폴더 안에 배치합니다.

Finder에서 Xcode로 파일을 드래그 할 때 Target Membership 에서 각각에 대해 적절한 환경을 선택해야합니다.

그것은 트릭을 수행하고 별도로 환경을 구축 할 수 있도록합니다. 특히 각 환경에 다른 번들 ID가있는 경우.


3

Xcode를 다시 시작하면 위의 옵션 중 어느 것도 작동하지 않았습니다.


2

불행히도 다행스럽게도 지정된 오류는 매우 정확합니다. 현재 사용 가능한 옵션은 하나뿐입니다. 즉, Google-Info.plist프로젝트에 파일을 올바르게 배치 합니다. 제거하고 다시 추가하십시오. 또한 대상이 선택되었는지 확인하십시오.


프로젝트 속성은 어디에 있습니까?
아담 eliezerov

2
  1. 파일 이름이 올바른지 확인하십시오. 예 : " GoogleService-info.plist"
  2. finder프로젝트 이름 으로 Mac의 프로젝트에 추가 한 다음 프로젝트로 드래그하여 참조합니다.
  3. 마지막으로 Silvajee가 언급했듯이 file inspectorplist 파일 로 이동하여 아래의 상자 target membership를 선택하여 project.

이 파일 이름을 GoogleService-info.plist로 바꿀 수 있습니까? GoogleService-info_myapp.plist와 같은 것으로
shaqir saiyed dec.

2

이 단계는 내 문제를 해결했습니다. 다음을 참조하십시오. 1. GoogleService-Info.plist 파일을 공유 리소스와 같은 위치의 프로젝트로 끌어서 놓아야합니다. 파일을 성공적으로 추가했으면 프로젝트 빌드에도 포함해야합니다.

2. 프로젝트의 "Build Phases"섹션에서 프로젝트에 GoogleService-Info.plist가 포함되어 있는지 다시 확인합니다.

3. 파일 이름을 다시 확인하십시오. 파일 이름은 정확히 GoogleService-Info.plist 여야합니다. 일반적인 맞춤법 오류에는 GoogleServices-Info.plist 및 GoogleService-info.plist가 포함됩니다. 대소 문자를 구분하고 정확히 이름이 지정된 경우에만 작동합니다.


감사합니다. 내 이름은 Info가 아닌 GoogleService-info입니다. 오, 이것이 나를 일으킨 두통!
Anish

2

Ionic을 사용하는 경우 먼저 Xcode에서 .xcworkspace 파일을 연 다음 GoogleService-info.plist 파일을 Resources 폴더로 드래그하십시오.

대부분의 온라인 튜토리얼은 어떤 이유로 든 그 부분을 잘 설명하지 못합니다.

Shahzaib Maqbool의 의견이 내 프로젝트를 위해이 정보를 얻는 데 도움이 되었기 때문에 크게 외칩니다.


2

아래 설정은 내 컴파일러 실패를 수정할 수 있습니다. 1. "파일 복사"에 추가 2. "번들 리소스 복사"에 추가하지 않음

여기에 이미지 설명 입력


1
  1. 실제로이 오류는 GoogleService-Info.plist 파일이 실제로 프로젝트 폴더에 있지 않지만 다운로드 된 해당 파일에 대한 참조 만있을 때 발생합니다. 따라서 해결책은이 파일에 대한 참조를 제거하고 프로젝트 폴더를 마우스 오른쪽 버튼으로 클릭하여 끌어서 놓기 또는 "파일 추가 ..."옵션을 사용하여 프로젝트 폴더에 다시 추가하는 것입니다. 또한 파일이 프로젝트 폴더 대상을 찾고 있는지 다시 확인하십시오. 그렇지 않으면 오류가 다시 발생합니다.

  2. "GoogleService-Info.plist"파일이 오류에 표시된 것과 동일한 이름을 가지고 있는지 확인하는 것을 잊지 마십시오. 그렇지 않으면 이름을 바꿉니다.



1

1- "GoogleService-Info.plist"를 열고 임의의 또는 변경

2-xamarin 솔루션 다시 열기 3-이제 작동합니다.


1

나는에서 프로젝트를 삭제하여 문제를 해결 Firebase하고 삭제 GoogleService-Info.plist프로젝트에서. 프로젝트를 다시 추가하고 FirebaseGoogleService-Info.plist파일 을 추가 한 후에 는 저에게 효과적이었습니다.


1

이 오류는 Google 서비스를 1 회 이상 다운로드 할 때 발생합니다. firebase에서 처음으로 다운로드하면 GoolgeService-Info.Plist. 다시 다운로드하면 GoogleService-Info(1).Plist. 우리는 제거해야합니다 (1)에서 GoogleService-Info(1).Plist.


1

Xcode에서 전체 경로 가 올바른지 확인해야합니다 . 처음부터 추가하는 것이 좋습니다. 이미했다면 5 단계로 이동합니다.

  1. Xcode를 종료합니다.
  2. 파일 이름이 올바른지 확인하십시오 ( "GoogleService-Info.plist").
  3. 프로젝트 폴더에 .plist 파일을 추가합니다. Podfile, .xcworkspace 등과 같은 수준입니다.
  4. Xcode를 열고 프로젝트 네비게이터에서 .plist 파일을 식별합니다. 없으면 마우스 오른쪽 버튼을 클릭 하고 "[프로젝트 이름]"에 새 파일 추가를 클릭 합니다 . 대상에 추가 옵션 아래의 프로젝트 이름을 클릭하십시오 .
  5. Project Navigator에서 GoogleService-Info.plist를 클릭합니다. 오른쪽 탐색기에서 파일 검사기 를 선택합니다 . 전체 경로가 올바른지 확인하십시오. 그렇지 않은 경우 폴더 아이콘을 클릭하고 프로젝트 파일 내에서 .plist 파일을 선택합니다.
  6. 짓다. 그래도 작동하지 않으면 Xcode를 종료하고 다시 빌드하십시오.

GoogleService-Info.plist에 대해 대상이 선택되어 있고 빌드중인 대상과 동일한 지 확인하십시오.
Swati

1

여기에 이미지 설명 입력

위의 스크린 샷과 같이 빌드 단계에 GoogleService-Info.plist를 추가합니다.



0

이전에 설치된 다른 "GoogleService-Info.plist"파일을 삭제합니다. 제 경우에는 같은 폴더에 다른 파일을 설치했기 때문에 "GoogleService-Info.plist-2"로 이름을 지정했습니다. 이것은 firebase에 혼란을 야기 할 것으로 보입니다. 이전 파일을 모두 삭제하고 현재 파일의 이름을 정확히 "GoogleService-Info.plist"로 변경했습니다. 작동했습니다.


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).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.