Posted at

リリースしたアプリのdSYMをFirebase/CrashlyticsにアップロードするTips


はじめに

Firebase/Crashlyticsでクラッシュの原因知りたいですよね?

原因を知るためにiOSアプリの場合はアプリのdSYMをFirebase/Crashlyticsにアップロードする必要があります。

本記事では、Bitriseとfastlaneを組み合わせて自動でアプリのdSYMをアップロードする方法の

ポイントについて書いてみます!


大まかな処理の流れ

ざっと2セクションです。

1. BitriseでdSYMをFirebaseにアップロードするWorkFlowを走らせる

2. WorkFlowに含まれているfastlane(dSYMアップロード用のlane指定)でAppStoreConnectに上がってる最新版アプリのdSYMをFirebaseにアップロード


Xcodeの設定

Debug Information FormatのReleaseをDWARF with dSYM File

ReleaseBuildを行う場合はdSYMを書き出すように設定

Enable Bitcodeをtrue

trueにしておくことで、Apple側でdSYMが作成されこのdSYMがAppStoreConnectからダウンロードできるようになるっぽい。


fastlaneでdSYMアップロード用のlane作成

アプリの最新版を指定

version: 'latest'

毎回WorkFlow回すごとにdSYMが溜まらないようアップロードした後に削除

clean_build_artifacts


desc "Automatically download and upload dSYM symbolication files from iTunes Connect for Bitcode iOS apps using fastlane"
lane :upload_dsyms do
download_dsyms(
version: 'latest'
)

# FirebaseにdSYMをアップロード
upload_symbols_to_crashlytics(gsp_path: "[GoogleService-Info.plistのPATH]")

# Delete the local dSYM files
clean_build_artifacts
end


Bitriseの設定

一部抜粋になりますが、

fastlaneをworkflowに組み込んでdSYMアップロード用のlane(upload_dsyms)を指定