SwiftUI 앱에 Firebase Crashlytics 도입

개요



첫 포스트입니다...!
SwiftUI를 공부하기도 전에 개인 앱을 만들었으므로, 그때 도입한 Crashlytics의 도입 방법에 대해 설명합니다.
이미 cocoaPods와 Firebase 기능의 일부를 사용했기 때문에 다소 접혀 있습니다.
프로젝트를 만들고 초기화하는 방법은 공식 문서를 참조하십시오.
htps : // 푹 빠져라. 오, ぇ. 이 m / 두 cs / c 등 shly 치 cs / 게 ts r d? p t t rm = 이오 s

Firebase Crashlytics란?



충돌 보고서를 수집하고 분석하는 서비스입니다.
그 외에도 Smartbeat과 같은 여러 충돌 보고서 서비스가 있습니다.

도입 방법



1.Crashlytics 설치



먼저 Podfile을 업데이트합니다.

Podfile

pod 'Firebase/Crashlytics'
pod 'Firebase/Analytics'

Podfile을 업데이트한 후 다음을 실행하여 라이브러리를 사용할 수 있도록 합니다.
$ pod install

2. Xcode의 Build Phases에서 Run Script 섹션 추가



아래 그림과 같이 왼쪽의 + 버튼에서 Run Script를 생성합니다.


3. Run Script에 필요한 설정 설명



셸 필드 아래
다음 코드를 작성합니다.
"${PODS_ROOT}/FirebaseCrashlytics/run"

그런 다음 입력 파일에 있는 + 버튼을 두 번 눌러 각 행에 다음 코드를 표시합니다.
${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)

이미지처럼 되어 있으면 OK입니다.


4. Xcode의 Build Settings 설정 변경



Xcode의 Build Settings 탭을 열고 Debug Information Format의 DEBUG 설정을 DWARF에서 DWARF with dSYM File로 변경합니다.


5. AppDelegate.swift를 준비하여 Firebase의 공유 인스턴스를 구성합니다.



자신은 AppDelegate를 준비하고 초기화했지만 Main View의 init 부분에서 가도 문제 없다고 생각합니다.

AppDelegate.swift
import Firebase
import UIKit

class AppDelegate: NSObject, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
        FirebaseApp.configure()
        return true
    }
}

AppDelegate를 참조할 수 있도록 설정

???.swift
@main
struct ???: App {
    @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}

6. 임의의 View에 크래시 시키는 버튼을 배치한다



아래와 같은 버튼을 설치하여 충돌시키십시오.

ContentView.swift
struct ContentView: View {
    var body: some View {
        Button(action: {
            fatalError()
        }, label: {
            Text("クラッシュさせる")
        })
    }
}

이제 Firebase의 Crashlytics 대시보드에 해당 충돌 이벤트가 표시될 것입니다.

좋은 웹페이지 즐겨찾기