작성
·
56
0
firebase auth와 firebase firestore를 통한 부분까지 잘 진행 되었다가 analytics관련 수업 진행 이후 타이틀 씬에서 로그인 UI에서 로그인버튼 터치 이후 바로 앱이 크러쉬되면서 꺼져서 logcat을 통해 에러를 확인했는데 해결 방법을 모르겠습니다. 어떤 방식이나 흐름을 통해서 해결해야할지 알 수 있을까요?
유니티 버전: 6000.0.41f1
firebase sdk와 google-sign-in sdk 모두 수업에서 알려주신 것과 같은 방식으로 설치 하였고, 이후 질문글의 구글 로그인 sdk 오류와 같은 현상이 생겨서 해당 질문글의 답변과 같은 방법으로 해결하였습니다.
위 첨부한 그림과 같은 에러가 발생하는데 어디서 부터 해결해야할지 모르겠습니다.
답변 2
0
안녕하세요! BurningCarrot입니다. 문의해 주신 내용에 답변 드립니다.
AndroidX DataStore 라이브러리가 어떤 이유로 포함되어 문제가 발생할 수도 있을 것 같습니다. 먼저 Assets > External Dependency Manager > Android Resolver > Force Resolve를 해보시면 어떻게 되는지 확인 부탁 드립니다. 그리고 Firebase Unity SDK는 버전명이 어떻게 될까요?
안녕하세요.
아래 두 파일이 제 프로젝트에 설정된 파일인데 이 파일들이 수강생 분의 동일한 파일과 어떻게 다른지 비교해 보시고, 제 걸로 덮어쓰기 했을 때 에러가 해결되는지 확인 부탁 드립니다.
mainTemplate.gradle
apply plugin: 'com.android.library'
**APPLY_PLUGINS**
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start
implementation 'androidx.constraintlayout:constraintlayout:2.1.4' // Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:12
implementation 'com.google.android.gms:play-services-ads:23.2.0' // Assets/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:7
implementation 'com.google.android.gms:play-services-auth:16+' // Assets/GoogleSignIn/Editor/GoogleSignInDependencies.xml:10
implementation 'com.google.android.gms:play-services-base:18.5.0' // Assets/Firebase/Editor/AppDependencies.xml:17
implementation 'com.google.android.ump:user-messaging-platform:2.2.0' // Assets/GoogleMobileAds/Editor/GoogleUmpDependencies.xml:7
implementation 'com.google.firebase:firebase-analytics:22.0.2' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:15
implementation 'com.google.firebase:firebase-analytics-unity:12.2.1' // Assets/Firebase/Editor/AnalyticsDependencies.xml:18
implementation 'com.google.firebase:firebase-app-unity:12.2.1' // Assets/Firebase/Editor/AppDependencies.xml:22
implementation 'com.google.firebase:firebase-auth:23.0.0' // Assets/Firebase/Editor/AuthDependencies.xml:13
implementation 'com.google.firebase:firebase-auth-unity:12.2.1' // Assets/Firebase/Editor/AuthDependencies.xml:20
implementation 'com.google.firebase:firebase-common:21.0.0' // Assets/Firebase/Editor/AppDependencies.xml:13
implementation 'com.google.firebase:firebase-config:22.0.0' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:13
implementation 'com.google.firebase:firebase-config-unity:12.2.1' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:20
implementation 'com.google.firebase:firebase-firestore:25.0.0' // Assets/Firebase/Editor/FirestoreDependencies.xml:13
implementation 'com.google.firebase:firebase-firestore-unity:12.2.1' // Assets/Firebase/Editor/FirestoreDependencies.xml:20
implementation 'com.google.signin:google-signin-support:1.0.4' // Assets/GoogleSignIn/Editor/GoogleSignInSupportDependencies.xml:9
// Android Resolver Dependencies End
**DEPS**}
// Android Resolver Exclusions Start
android {
packagingOptions {
exclude ('/lib/armeabi/*' + '*')
exclude ('/lib/mips/*' + '*')
exclude ('/lib/mips64/*' + '*')
exclude ('/lib/x86/*' + '*')
exclude ('/lib/x86_64/*' + '*')
}
}
// Android Resolver Exclusions End
android {
ndkPath "**NDKPATH**"
compileSdkVersion **APIVERSION**
buildToolsVersion '**BUILDTOOLS**'
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
defaultConfig {
minSdkVersion **MINSDKVERSION**
targetSdkVersion **TARGETSDKVERSION**
ndk {
abiFilters **ABIFILTERS**
}
versionCode **VERSIONCODE**
versionName '**VERSIONNAME**'
consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD**
}
lintOptions {
abortOnError false
}
aaptOptions {
noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ')
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~"
}**PACKAGING_OPTIONS**
}
**IL_CPP_BUILD_SETUP**
**SOURCE_BUILD_SETUP**
**EXTERNAL_SOURCES**
org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M
org.gradle.parallel=true
unityStreamingAssets=**STREAMING_ASSETS**
# Android Resolver Properties Start
android.useAndroidX=true
android.enableJetifier=true
# Android Resolver Properties End
**ADDITIONAL_PROPERTIES**
덮어쓰기를 시도했는데, 아래 그림과 같이 경고창이 뜹니다. Yes와 No 둘다 테스트를 해봤는데 역시나 같은 오류가 발생합니다. (혹시 2025년 8월 말 기준 유니티 6와 구글 플레이 스토어 요구사항에 맞춰서 해당 강좌의 빌드 부분 테스트 확인이 가능할까요?)
최근 구글 플레이 스토어에서 강제로 Target API 레벨을 한단계 올리라는 경고를 받고 한단계 레벨을 올렸는데, 그런 부분이 영향이 있는지 모르겠네요.
이미 한단계 올려놓은 뒤 구글 로그인 파트 영상을 참고로 빌드한건 제대로 되었는데, Analytics를 적용한 뒤부터는 analytics 부분 코드를 주석처리해도 빌드 후, 핸드폰에 설치하면 무조건 크러쉬가 나네요.
앱 실행후 firebase에서 로그인 기록은 잡히는걸 보면 타이틀 씬에서 로그인 확인 까지는 확실한데, 그뒤에 이전에 올린 것처럼 바로 앱 크래쉬가 나서....
mainTemplate.gradle 부분은 위 경고창에 따른 업데이트후 아래와 같이 무조건 자동으로 변경됩니다. gradleTemplate.properties 부분은 올려주신 부분과 같네요.
apply plugin: 'com.android.library'
apply from: '../shared/keepUnitySymbols.gradle'
**APPLY_PLUGINS**
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start
implementation 'com.google.android.gms:play-services-auth:16+' // Assets/GoogleSignIn/Editor/GoogleSignInDependencies.xml:10
implementation 'com.google.android.gms:play-services-base:18.7.2' // Assets/Firebase/Editor/AppDependencies.xml:17
implementation 'com.google.firebase:firebase-analytics:23.0.0' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:15
implementation 'com.google.firebase:firebase-analytics-unity:13.1.0' // Assets/Firebase/Editor/AnalyticsDependencies.xml:18
implementation 'com.google.firebase:firebase-app-unity:13.1.0' // Assets/Firebase/Editor/AppDependencies.xml:22
implementation 'com.google.firebase:firebase-auth:24.0.0' // Assets/Firebase/Editor/AuthDependencies.xml:13
implementation 'com.google.firebase:firebase-auth-unity:13.1.0' // Assets/Firebase/Editor/AuthDependencies.xml:20
implementation 'com.google.firebase:firebase-common:22.0.0' // Assets/Firebase/Editor/AppDependencies.xml:13
implementation 'com.google.firebase:firebase-config:23.0.0' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:13
implementation 'com.google.firebase:firebase-config-unity:13.1.0' // Assets/Firebase/Editor/RemoteConfigDependencies.xml:20
implementation 'com.google.firebase:firebase-firestore:26.0.0' // Assets/Firebase/Editor/FirestoreDependencies.xml:13
implementation 'com.google.firebase:firebase-firestore-unity:13.1.0' // Assets/Firebase/Editor/FirestoreDependencies.xml:20
implementation 'com.google.signin:google-signin-support:1.0.4' // Assets/GoogleSignIn/Editor/GoogleSignInSupportDependencies.xml:9
// Android Resolver Dependencies End
**DEPS**}
// Android Resolver Exclusions Start
android {
packaging {
exclude ('/lib/armeabi/*' + '*')
exclude ('/lib/mips/*' + '*')
exclude ('/lib/mips64/*' + '*')
exclude ('/lib/x86/*' + '*')
exclude ('/lib/x86_64/*' + '*')
}
}
// Android Resolver Exclusions End
android {
namespace "com.unity3d.player"
ndkPath "**NDKPATH**"
ndkVersion "**NDKVERSION**"
compileSdk **APIVERSION**
buildToolsVersion = "**BUILDTOOLS**"
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
defaultConfig {
minSdk **MINSDK**
targetSdk **TARGETSDK**
ndk {
abiFilters **ABIFILTERS**
debugSymbolLevel **DEBUGSYMBOLLEVEL**
}
versionCode **VERSIONCODE**
versionName '**VERSIONNAME**'
consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD**
**DEFAULT_CONFIG_SETUP**
}
lint {
abortOnError false
}
androidResources {
noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(', ')
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~"
}**PACKAGING**
}
**IL_CPP_BUILD_SETUP**
**SOURCE_BUILD_SETUP**
**EXTERNAL_SOURCES**
gradleTemplate.properties 파일에서 아래와 같이 android.enableJetifier=false로 했을 때는 어떻게 되는지 확인 부탁 드립니다.
android.useAndroidX=true
android.enableJetifier=false
https://github.com/firebase/firebase-unity-sdk/issues/1225
이 스레드를 확인하시면 두 가지 해결 방법이 있다고 합니다.
unity firebase sdk를 12.6 버전으로 설치
baseProjectTemplate.gradle 파일을 활성화하고 파일 맨 위에 아래 내용 추가
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22"
}
}
baseProjectTemplate.gradle 파일 활성화는 Project Setttings에서 합니다.
두 번째 방법으로 해결이 되시는지 확인 부탁 드립니다. 두 번째 방법으로도 해결되지 않는다면 첫 번째 방법을 시도해 보셔야 할 것 같습니다.
2번째 방법으로 빌드해도 안되네요. 결국 sdk 전부를 밀고 재설치해서 확인해봐야할거 같아요.
https://github.com/firebase/firebase-android-sdk/issues/7286#issuecomment-3225667719
위와 같은 글이 있어서 firestoredependency.xml에서 아래와 같이 버전 추가 방법도 해봤는데, 마찬가지 입니다. <androidPackage spec="androidx.datastore:datastore-preferences:1.1.7">
</androidPackage>
0
안녕하세요, 인프런 AI 인턴입니다. asdfasdfasdfasdf님.
Firebase Analytics를 추가한 후 앱이 크러쉬되는 문제에 대해 도움을 드리겠습니다. 여러 가지 발생할 수 있는 오류 요소 중 몇 가지 주요 원인을 점검해 보겠습니다.
Firebase SDK 설정 확인:
google-services.json
파일이 올바른 위치에 있는지와, Firebase 초기화 코드가 Start()
함수에서 실행되고 있는지를 확인하세요.로그 분석:
Google Services 의존성 파일 확인:
Assets/Plugins/Android
폴더 내 PlayServicesResolver
에 의해 생성된 .aar
파일과 AndroidManifest.xml
파일이 문제없이 설정되어 있는지 확인해주세요.로그인 버튼의 스크립트 검토:
Firebase 콘솔 설정 확인:
관련 유사 질문과 답변 링크:
이 방법들로도 문제가 해결되지 않는다면, Build.gradle
구성을 확인하거나, Firebase 관련 로그의 추가 분석이 필요할 수 있습니다. 복합적인 문제일 경우엔 프로젝트 환경 전반을 검토해보는 것도 방법 중 하나입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
Force Resolve 후, 빌드 & 설치하여 다시 테스트해도 똑같네요.
SDK관련은 강의에서 하는 그대로 같은 버전으로 했었어요.
firebase_unity_sdk_13.1.0
google-signin-plugin-1.0.4
이렇게 활용했습니다.