본문 바로가기
Programming/Flutter

[Flutter] Firebase Crashlytics 사용 설정하기

by SpiralMoon 2019. 12. 21.
반응형

Firebase Crashlytics 사용 설정하기

플러터 프로젝트에 오류 로그 수집기인 Firebase crashlytics을 설정해보자

선행 작업

이 글은 파이어베이스 프로젝트 생성Android, iOS 앱 등록 이후의 작업을 다루므로 앞의 두 프로세스를 완료하지 않았다면 아래 링크에서 작업을 완료해야 한다.

 

1. 파이어베이스 프로젝트 생성

 

[Firebase] Firebase 프로젝트 생성하기

Firebase 프로젝트 생성하기 Google Firebase 프로젝트를 생성해보자. Google Firebase Console 접속 파이어베이스 서비스를 이용하기 위해서는 구글 파이어베이스 콘솔에 접속해야한다. https://console.firebase..

spiralmoon.tistory.com

2. 파이어베이스 프로젝트에 Android, iOS 앱 등록

 

[Firebase] Firebase 프로젝트에 Android, iOS 연결하기

Firebase 프로젝트에 Android, iOS 연결하기 파이어베이스에 안드로이드, iOS 앱 프로젝트를 등록하고 의존성을 관리해보자. 선행 작업 이 글은 파이어베이스 프로젝트 생성 절차를 마친 이후의 작업을 다루므로..

spiralmoon.tistory.com


작업 순서

1. 콘솔에서 Crashlytics 활성화 하기

2-1. Android에 적용하기

2-2. iOS에 적용하기

3. Crashlytics 작동시키기


콘솔에서 Crashlytics 활성화 하기

Crashlytics를 적용하는 방법은 매우 간단하다. 파이어베이스 프로젝트를 미리 생성해두었다면 웹에서 별도로 설정해야하는 과정이 없다.

 

파이어베이스 콘솔에서 "품질 >> Crashlytics" 항목으로 들어간다.

 

설정하기 버튼을 누른다.

 

새 Firebase 앱 설정 선택

 

벌써 끝났다. 웹에서 설정해 줄 것이 없다. SDK 설치는 프로젝트 파일에서 진행한다.


Android에 적용하기

안드로이드 프로젝트 폴더에 들어가서 프로젝트 레벨의 build.gradle에 maven 주소와 fabric, google-services 의존성을 추가해준다.

 

buildscript {
    ...
    repositories {
        ...

        maven {
            // firebase crashlytics
            url 'https://maven.fabric.io/public'
        }
    }

    dependencies {
    	...
        
        classpath 'com.android.tools.build:gradle:3.5.0'
        classpath 'com.google.gms:google-services:4.3.3'
        // firebase crashlytics
        classpath 'io.fabric.tools:gradle:1.26.1'
    }
}

 

app 레벨의 build.gradle에는 위 처럼 플러그인을 활성화 해준다.

여기까지가 안드로이드 설정 과정이다.


iOS에 적용하기

Xcode로 iOS 프로젝트를 연다.

 

총 순서는 5개다.

1. Xcode로 프로젝트를 열어 Runner를 선택한다.

2. Build Phases 탭을 선택한다.

3. + 버튼을 누르고, 새로운 Run Script Phase를 추가한다.

4. 텍스트 박스에 ${PODS_ROOT/Fabric/run}을 추가한다.

5. 사용중인 Xcode 버전이 10이라면, Info.plist의 Input Files에 $(BUILD_PRODUCTS_DIR)/$(INFOPLIST_PATH)를 추가한다.

 

Runner 탭에서 Build Phases 항목을 선택한다.

 

+ 버튼을 누르고 New Run Script Phase 버튼을 누른다.

 

스크립트를 입력할 수 있는 텍스트 박스가 나오는데 거기에 ${PODS_ROOT}/Fabric/run을 추가한다.

여기까지 iOS 설정 과정이다.


Crashlytics 작동시키기

앱 설정을 마쳤다면 crashlytics를 활성화 할 차례이다.

 

// pubspec.yaml
dependencies:
  firebase_crashlytics: ^0.1.2+4

pubspec.yaml에 firebase_crashlytics 패키지를 추가한다.

 

메인 함수에서 앱을 로딩하기 전에 Crashlytics를 초기화하는 코드를 넣어주면 된다.

위 예제 코드는 앱에서 발생하는 모든 크래시 오류 기록을 파이어베이스로 전달한다는 뜻이다.

 

모든 설정이 완료되었으며, 이제부터 발생하는 크래시 로그는 파이어베이스의 Crashlytics 항목에서 조회할 수 있게 된다.


관련 문서

 

firebase_crashlytics | Flutter Package

Flutter plugin for Firebase Crashlytics. It reports uncaught errors to the Firebase console.

pub.dev

 

반응형

댓글