Floating 앱 출시 후 Google 로그인이 작동하지 않음
Flutter로 앱을 개발하고 다음 명령을 사용하여 장치에서 테스트했습니다.
flutter run --release
그리고 모든 것이 잘 작동했습니다.또한 다음을 사용하여 앱을 구축해 보았습니다.
flutter build apk --release
수동으로 설치해도 문제가 없습니다.
저는 가게에 업로드를 했고, 이제 로그인이 안 됩니다.로그캣을 확인해 봤는데 로그인을 시도할 때 나타나는 오류는 다음과 같습니다.
I/flutter: exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null)
저는 appCompat 종속성을 추가하려고 시도했고 SHA1 키를 확인했습니다. 모든 것이 올바른 위치에 있습니다. 상점에서 더 이상 작동하지 않으면 다운로드할 때 이유를 알 수 없습니다.
API 공급자(이 경우 Firebase)에 Play Store 앱 서명 키를 등록해야 할 수 있습니다.
Google Play Console에서 Setup > App signing을 방문합니다.
알았다.
SHA-1 certificate fingerprintFirebase Console에서 Settings > Project settings를 방문합니다.
릭
Add fingerprint한 사한붙
SHA-1 certificate fingerprint안으로Certificate fingerprint필드릭
Save
앱에 토큰 API에 대한 올바른 Google 자격 증명이 없을 수 있습니다.
Google Play Console에 처음 등록했을 때 Google의 앱 서명 서비스를 선택했을 수 있습니다.이렇게 하면 키 저장소로 앱에 서명하고 재생 콘솔에 업로드한 후 Google은 실제로 생성된 키 저장소로 앱에 서명하고 해당 버전을 롤아웃합니다.릴리스 관리 -> 앱 서명 -> 앱 서명 인증서에서 콘솔에서 릴리스 버전이 서명된 키에 액세스할 수 있습니다.
인증서를 찾은 후 SHA1 키를 사용하여 새 Android Oauth 자격 증명을 생성한 다음 Google-services.json에 추가해야 합니다.Firebase를 사용하지 않는 경우 Oauth 자격 증명을 백엔드에 추가해야 합니다.
이 안드로이드 스레드에서 동일한 이슈에 대한 HarsitG의 답변을 보면 Play Console에서 인증서 정보를 얻을 수 있는 위치의 사진을 볼 수 있습니다.
Google signIn 릴리스 모드에서 작동하지 않음 apk Android
당신의 구글 플레이 콘솔로 이동하세요, 릴리스 관리에서 당신은 앱 서명을 찾을 수 있을 것이고, 두 개의 Sha 키가 있고, Sha 부분 없이 그것들을 firebas 프로젝트에 복사합니다. SHA 인증서 지문 apk는 그 이후에 작동할 것입니다.
이러한 문제가 있는 사람들은 자신의 파이어베이스 계정에 할당된 SHA 인증서 지문을 확인하는 것이 좋습니다. 릴리스 및 디버그 SHA 인증서 지문이 모두 필요합니다.이 작업을 수행하려면 다음을 수행합니다.
- 프로젝트의 Android 폴더로 이동합니다.
- 명령을 합니다.
./gradlew signingReport - 릴리스 SHA 인증서 지문 찾기
- 디버그 SHA 인증서 지문 찾기
- 방화벽 계정 SHA 인증서 지문에 추가
- Google-services.json을 다시 다운로드합니다.
- 앱 레벨 폴더에 추가 완료!
명령을 무분별하게 실행하기 전에 몇 가지 개념을 바로 잡읍시다!!
릴리스 빌드를 만들려면 서명 인증서/키스토어(해당 .jks 파일)에 의해 앱에 서명해야 합니다.릴리스 빌드는 디버그 모드 또는 릴리스 모드로 생성됩니다(자세한 내용은 나중에 설명).
이러한 키 저장소 파일에는 세 가지 유형이 있습니다.
사용하여 생성된 디버그 키 저장소
./gradlew signingReport할 때 할 수 있습니다다음 지침에 따라 생성된 키 저장소 업로드("빌드 릴리스"를 만드는 데 유용합니다.디버그 키 대신 이 키를 사용합니다.
앱 번들을 처음 업로드할 때 Play Console에서 자동으로 생성되는 배포 키 저장소/Play Signing 키 저장소(페이지는 에서 확인할 수 있습니다.)
Setup > App integrity > App signing이 키 저장소는 Google에 유지됩니다.은 그것의 액스권없다에 할 수 ..jks파일입니다. 그래서 안전하고 길을 잃지 않습니다.
이제, 저는 당신이 플레이스토어에서 당신의 앱을 얻고 싶다면 디버그 키스토어를 생성하지 말라고 말하고 싶습니다.업로드 키 저장소만 생성하고 항상 사용합니다.
이것이 왜 중요합니까?
- 디버그 키 저장소는 앱을 릴리스 모드가 아닌 디버그 모드에서 서명할 수 있습니다.
하려고 해도.
flutter build appbundle와 함께--release깃발, 당신은 받을 것입니다.app-release.aab디버그 모드에서 서명됩니다!Play Store에서는 디버그 모드로 서명된 앱을 게시할 수 없습니다. - 키스토어 업로드는 플레이스토어에 게시할 수 있는 릴리스 모드에서 앱에 서명할 수 있습니다.
- 따라서 나중에 앱을 게시하려면 다음 지침에 따라 업로드 키 저장소를 생성하고 그에 따라 파일을 그라들링합니다.해당 디버그 키 저장소는 필요하지 않으므로 생성하지 마십시오.
이 설명을 통해 디버그 키 저장소를 가져올 것을 권장하는 일부 답변이 잘못된 이유를 이해할 수 있어야 합니다.
이제 위의 질문에 대한 적절한 대답입니다.
특정 Google Play 서비스(예: Google 로그인 및 App Invests)에서는 다음을 제공해야 합니다.SHA-1서명 인증서의
따라서 업로드 키 저장소로 앱에 서명하는 경우,SHA-1업로드 키 저장소의 지문Firebase Console > Settings Icon > Project settings > Add fingerprint
다음 정보를 얻을 수 있습니다.
SHA-1키 저장소 업로드의 경우keytool -v -list -keystore /path/to/upload-keystore.jks또한, 당신은 그것을 얻을 수 있습니다.
SHA-1업로드 키 저장소 및 배포 키 저장소에 대한 자세한 내용은 다음과 같습니다.Setup > App integrity > App signing
어떤.SHA-1추가할까요?두명입니다SHA-1재생할 수 있습니다.
둘 다 추가해야 합니다.SHA-1소방 기지에 지문을 채취했습니다
왜요?
- 게시 리뷰의 경우 업로드 키 저장소에 서명된 앱을 항상 제출해야 합니다.Play Console은 동일한 업로드 키 저장소로 서명된 앱 업데이트 제출만 수락합니다(따라서 업로드 키 저장소를 안전하게 유지).그렇기 때문에 Upload keystore signed App이 제대로 작동하려면 Upload keystore의 SHA-1을 Firebase에 추가해야 합니다.
- 게시 검토가 수락되면 Play Console에 의해 배포 키 저장소를 사용하여 앱이 다시 서명되고(자동) Play Store에 게시됩니다.따라서 배포 키 저장소에 서명된 앱이 제대로 작동하도록 하려면 Firebase에 배포 키 저장소의 SHA-1을 추가해야 합니다.
릴리스의 경우 디버그 지문과 별도로 두 개의 SHA 인증서 지문이 파이어베이스에 추가되었는지 확인해야 합니다.하나는 키 도구(키 인증서 업로드)를 통해 검색할 수 있으며, 다른 하나(앱 서명 키 인증서)는 플레이 콘솔에서 복사할 수 있습니다(위 답변에 설명된 앱 무결성 섹션).
저는 그 문제를 겪었고 다음과 같이 해결했습니다.
gradle.properties 파일에 아래 명령을 추가합니다.
org.gradle.java.home=C:\Program Files\\Java\\jdk-18.0.1.1.
내 경우:
org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true
android.enableJetifier=true
org.gradle.java.home=C:\Program Files\\Java\\jdk-18.0.1.1
그런 다음 터미널에서 디렉터리를 안드로이드로 변경합니다.(창을 사용합니다)
cd android
마침내, 나는 썼습니다../gradlew signingreport터미널에서 SHA1과 SHA-256을 받았습니다.그런 다음 화기에 추가합니다.
다른 시스템이나 랩톱에서 APK 파일을 생성하는 경우 이 문제가 발생할 수 있습니다.
언급URL : https://stackoverflow.com/questions/53263246/google-sign-in-doesnt-work-after-release-of-flutter-app
'programing' 카테고리의 다른 글
| 일치하는 호스트 키 유형을 찾을 수 없습니다.그들의 제안: ssh-rsa. (0) | 2023.06.30 |
|---|---|
| 업데이트 패널을 새로 고친 후 자바스크립트를 실행하려면 어떻게 해야 합니까? (0) | 2023.06.30 |
| 렌(제너레이터() 방법) (0) | 2023.06.25 |
| jQuery: text()와 html()의 차이점은 무엇입니까? (0) | 2023.06.25 |
| IIS 7.5의 GZip 압축이 작동하지 않음 (0) | 2023.06.25 |

