IT/Ⅱ. Android

[Android] FCM Crashlytics 로그

혁준7519 2025. 7. 6. 00:16

build.gradle.kts (:app)

plugins {
    ...
    // 파이어베이스
    id("com.google.gms.google-services")
    id("com.google.firebase.crashlytics")
}
 
dependencies {
    ...
    // 파이어베이스
    implementation(platform("com.google.firebase:firebase-bom:33.15.0"))
    implementation("com.google.firebase:firebase-analytics")
    implementation("com.google.firebase:firebase-crashlytics")
}
cs

 

 

build.gradle.kts (:루트)

plugins {
    ...
    // 파이어베이스
    id("com.google.gms.google-services") version "4.4.3" apply false
    id("com.google.firebase.crashlytics") version "3.0.4" apply false
}
cs

 

 

proguard-rules.pro

-keepattributes SourceFile,LineNumberTable        # Keep file names and line numbers.
-keep public class * extends java.lang.Exception  # Optional: Keep custom exceptions.
cs

 

 

MainActivity.java

public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        Button btnTest = findViewById(R.id.btnTest);
        btnTest.setOnClickListener(view -> {
            try {
                int a = 1/0;
            }
            catch (Exception e) {
                FirebaseCrashlytics crash = FirebaseCrashlytics.getInstance();
                crash.log("TEST Crash 발생!");
                crash.setCustomKey("name""홍길동");
                crash.setCustomKey("address""서울특별시");
                crash.setCustomKey("phone""+821012341234");
                crash.setUserId("User01");
                crash.recordException(e);
            }
        });
    }
}
 
cs

 

 

결과

Exception Stack Trace

 

커스텀키

 

커스텀 로그

 

사용자 ID 확인