Firebase Crashlytics SPM 설치 방법 (Swift / iOS)
iOS 앱을 운영하다 보면 실제 사용자 환경에서 발생하는 오류를 빠르게 파악하는 것이 중요하다. 특히 테스트 환경에서는 재현되지 않지만 배포 후 특정 기기나 특정 OS에서만 발생하는 크래시는 일반 로그만으로 원인을 찾기 어렵다.
이럴 때 많이 사용하는 도구가 바로 Firebase Crashlytics다. Crashlytics를 적용하면 앱에서 발생한 크래시 정보를 Firebase 콘솔에서 확인할 수 있고, 어떤 코드에서 문제가 발생했는지 빠르게 분석할 수 있다.
Firebase Crashlytics란?
Firebase Crashlytics는 앱에서 발생한 크래시 로그를 수집하고 분석할 수 있도록 도와주는 서비스다.
- 앱 크래시 자동 수집
- 스택 트레이스 분석
- 기기 / OS 정보 확인
- 앱 버전별 크래시 통계
- Custom 로그 기록
특히 iOS에서는 dSYM 파일을 이용해 크래시 로그를 사람이 읽을 수 있는 형태로 변환한다.
Crashlytics 설치 전 준비
Crashlytics를 사용하려면 먼저 Firebase 프로젝트에 iOS 앱을 등록해야 한다.
- Firebase 콘솔에서 프로젝트 생성
- iOS 앱 등록
- GoogleService-Info.plist 다운로드
- Xcode 프로젝트에 파일 추가
1. Swift Package Manager로 Firebase SDK 추가
Xcode에서 Firebase SDK를 설치하는 가장 쉬운 방법은 Swift Package Manager를 사용하는 것이다.
다음 메뉴로 이동한다.
File → Add Package Dependencies
패키지 URL에 다음 주소를 입력한다.
https://github.com/firebase/firebase-ios-sdk
패키지를 추가하면 여러 Firebase 모듈이 나타난다. 여기서 Crashlytics 관련 모듈을 선택한다.
- FirebaseCrashlytics
- FirebaseAnalytics (권장)
Firebase 공식 문서에서도 Apple 플랫폼에서 Firebase SDK를 설치할 때 Swift Package Manager 사용을 권장하고 있다.
2. GoogleService-Info.plist 파일 추가
Firebase 프로젝트를 생성하면 GoogleService-Info.plist 파일을 다운로드할 수 있다.
이 파일을 Xcode 프로젝트에 추가하고 반드시 앱 타깃(Target Membership)에 포함되어 있어야 한다.
프로젝트 → Target → Build Phases → Copy Bundle Resources
여기 목록에 GoogleService-Info.plist가 포함되어 있는지 확인한다.
3. Firebase 초기화
Firebase SDK를 추가했다면 앱 시작 시 Firebase를 초기화해야 한다.
SwiftUI 프로젝트
import SwiftUI
import FirebaseCore
@main
struct MyApp: App {
init() {
FirebaseApp.configure()
}
var body: some Scene {
WindowGroup {
ContentView()
}
}
}
UIKit 프로젝트
import UIKit
import FirebaseCore
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
FirebaseApp.configure()
return true
}
}
4. Crashlytics 테스트
설정이 정상적으로 되었는지 확인하려면 테스트 크래시를 발생시켜 보는 것이 좋다.
fatalError("Crashlytics test crash")
앱이 강제로 종료된 후 몇 분 뒤 Firebase 콘솔에서 해당 크래시가 표시된다.
5. dSYM 업로드 설정
Crashlytics가 스택 트레이스를 제대로 분석하려면 dSYM 파일이 업로드되어야 한다.
SPM 환경에서는 다음 Run Script를 Build Phases에 추가한다.
"${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
이 스크립트는 Archive 빌드 시 dSYM 파일을 자동으로 Firebase에 업로드한다.
SPM 환경에서 자주 발생하는 문제
- dSYM 업로드 실패
- Run Script 경로 문제
- Archive 빌드에서 스크립트 미실행
이 경우 Run Script 경로를 확인하면 대부분 해결된다.
마무리
Firebase Crashlytics는 iOS 앱 운영에서 매우 중요한 도구다. Swift Package Manager를 이용하면 Firebase SDK를 훨씬 간단하게 설치할 수 있다.
설치 과정은 다음과 같이 정리할 수 있다.
- Firebase 프로젝트 생성
- iOS 앱 등록
- GoogleService-Info.plist 추가
- SPM으로 Firebase SDK 설치
- FirebaseApp.configure() 초기화
- Crashlytics 테스트
이 과정을 완료하면 iOS 앱에서 발생하는 크래시를 Firebase 콘솔에서 쉽게 확인할 수 있다.
Firebase Crashlytics 관련 글
'IT' 카테고리의 다른 글
| SwiftUI List Separator 제거 방법 (iOS) (0) | 2026.03.14 |
|---|---|
| SwiftUI NavigationStack 사용 방법 정리 (iOS 16+) (0) | 2026.03.14 |
| Firebase Crashlytics에서 UUID Missing 해결 방법 (iOS / Swift) (0) | 2026.03.14 |
| Firebase Crashlytics 크래시 로그 확인하는 방법 (Swift / iOS) (0) | 2026.03.14 |
| Firebase Crashlytics 설정 방법 (Swift / iOS) (0) | 2026.03.14 |