Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Firebase crash reportの実践的導入
Search
yamacraft
July 13, 2016
Technology
3
1.2k
Firebase crash reportの実践的導入
2016/07/13(水)に開催されたOtemachi Firebase#1にて使用した資料です
yamacraft
July 13, 2016
Tweet
Share
More Decks by yamacraft
See All by yamacraft
なぜアプリのデザインとその実装はうまくいかないのか?
yamacraft
0
170
あんまり触れられてない気がする、Kotlin1.3の ありがたい追加機能
yamacraft
0
2.7k
ありがたいUIをもっと大事にしたい
yamacraft
2
2.2k
Quickstart-android/mlkitについて
yamacraft
2
4.5k
Firebase関連をCIでデプロイするときのTips
yamacraft
0
4.9k
開発用途で Realtime Databaseを 導入した話
yamacraft
2
4.5k
ciecleci/androidのOpenSSLに気をつけよう
yamacraft
0
680
Realtime Databaseに向いてる・向いてないサービス
yamacraft
0
870
社内用アプリでFirebaseを使っている話
yamacraft
2
1.9k
Other Decks in Technology
See All in Technology
パフォーマンスとコスト改善のために法人データ分析基盤をBigQueryに移行した話
seiya303
1
100
エンジニアとしてプロダクトマネジメントに向き合った1年半
sansantech
PRO
0
100
CloudWatch Container Insightsを使ったAmazon ECSのリソース監視
umekou
1
120
Creative Pair
kawaguti
PRO
1
130
GraphRAG: What I Thought I Knew (But Didn’t)
sashimimochi
1
230
Tokyo RubyKaigi 12 - Scaling Ruby at GitHub
jhawthorn
2
210
BLEAでAWSアカウントのセキュリティレベルを向上させよう
koheiyoshikawa
0
140
アーキテクチャわからん、の話
shirayanagiryuji
0
150
DevSecOps入門:Security Development Lifecycleによる開発プロセスのセキュリティ強化
yuriemori
0
240
Women in Agile
kawaguti
PRO
2
170
【Λ(らむだ)】アップデート機能振り返りΛ編 / PADjp20250127
lambda
0
120
レイクハウスとはなんだったのか?
akuwano
15
2k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
98
18k
Faster Mobile Websites
deanohume
305
30k
Facilitating Awesome Meetings
lara
51
6.2k
Thoughts on Productivity
jonyablonski
68
4.4k
The Cult of Friendly URLs
andyhume
78
6.2k
Rails Girls Zürich Keynote
gr2m
94
13k
Optimising Largest Contentful Paint
csswizardry
33
3k
Designing for Performance
lara
604
68k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Navigating Team Friction
lara
183
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
Firebase crash report ͷ࣮ફతಋೖ @yamacraft
ਆઘFirebaseษڧձ #1ͱ ʢ΄΅ʣಉ͡༰Ͱ͢
profile • @yamacraft (Wataru Yamada) • LeadingMark, inc / team
Y.G.E. • Mobile Application Engineer
https://www.recme.jp/
Androidʹ͓͚Δ Firebase crash reportͷ Λ͠·͢ʢ˞ʣ
What’s Firebase crash report? • ΫϥογϡϨϙʔτऩूػೳ • ແྉͰ͑Δʢॏཁʣ • AndroidͳΒdependenciesʹՃͤ͞Δ͚ͩ
Ͱಈ࡞͢Δʢॏཁʣ
ྨࣅαʔϏεʢൺֱରʣ
AndroidͰͷಋೖํ๏ • {project_root}/build.gradleʹҎԼΛهड़
AndroidͰͷಋೖํ๏ • app/build.gradleʹҎԼΛهड़
ΞϓϦΫϥογϡޙͷLogCat
ίϯιʔϧը໘
ίϯιʔϧը໘
ίϯιʔϧը໘
ίϯιʔϧը໘
ॾҙ • CrashlyticsͷΑ͏ͳΫϥελCloseཧػೳ͕ͳ͍ • Google Play Service͕ೖ͍ͬͯͳ͍ͩͱ͑ͳ͍ • FirebaseCrashSenderServiceͰcom.google.gmsύοέʔδͷΫ ϥεΛ͍ͬͯΔͨΊ
• ͳΜ͔ApplicationΫϥε͕ϚϧνϓϩηεͰ࣮ߦ͞ΕΔՄೳੑ͕͋ ΔΒ͍͠ʢະݕূʣ • https://firebase.google.com/docs/crash/android#known-issues
QɿCrashlyticsʹൺΔͱ ͪΐͬͱඍົ͡Όͳ͍ʁ ʢҠߦ͢Δ΄Ͳ͡Όͳ͍ʁʣ
Aɿͦ͏ࢥ͏
Aɿ͏ͳΒʢCrashlytics ͱʣซ༻͕͍͍͔
࣮ફฤ
࣮ʹ͏্Ͱߟྀ͍ͨ͜͠ͱ • ΫϥογϡҎ֎ͰΫϥογϡϨϙʔτΛૹ Γ͍ͨʢϩάΛஷΊ͍ͨʣ • Crashlyticsͷcore.log() core.logException()ͱಉͷػೳ • ಡԽΛ͔͚ͯΩνϯͱΤϥʔՕॴ͕ಛఆ Ͱ͖ΔΑ͏ʹ͢Δ
ΫϥογϡҎ֎Ͱϩάૹ৴ • FirebaseCrash.log(String message) • ϩάΛஷΊΔ • ͜ͷ࣌Ͱૹ৴͠ͳ͍ʢΫϥογϡϨϙʔτ ͷૹ৴࣌ʹ߹ΘͤͯૹΒΕΔʣ •
FirebaseCrash.report(Throwable throwable) • ʮඇக໋తΤϥʔʯͱͯ͠ૹ৴͢Δ
ίϯιʔϧը໘
ྫɿTimber.TreeͰରԠ
proguardରԠ • crashlyticsͱಉ༷ͷઃఆͰOK • ϚοϐϯάϑΝΠϧίϯιʔϧʹૹΔͨΊ ʹ͏
ίϯιʔϧը໘
·ͱΊ • Google Play Service͕ೖ͍ͬͯͳ͍Ͱͷར༻ߟྀ͍ͯ͠Δ߹Φε εϝ͠ͳ͍ • Kindleͱ͔ɺத՚λϒϨοτܥͱ͔ • CrashlyticsͰΕΔ͜ͱେମͰ͖ͦ͏ʢίϯιʔϧը໘Λআ͘ʣ
• ಛԽͨ͠ϝϦοτਖ਼ݟͨΒͳ͍ɻࠓޙʹظɻ • iOS/Android/WebΛҰͭͷϓϩδΣΫτͰ·ͱΊΒΕΔͷɺ͍͍͜ͱ ͳͷ͔͠Εͳ͍ʢσϝϦοτʹͳΓ͑ͦ͏ʣ • analyticsnotificationͱͷབྷΈʹظ
͓·͚
iOSΞϓϦʹFirebase crashೖΕ·ͨ͠˞
iOS൛ͷΫϥογϡϨϙʔτ Ͳ͏ͬͯૹΒΕΔͷ͔ʁ • Ϋϥογϡ࣌ʹϩάΛอଘ͠ɺ࣍ճىಈ࣌ʹ ૹ৴͢ΔΑ͏ͳܗͰ࣮͞Ε͍ͯΔͬΆ͍ • ͭ·ΓΫϥογϡͯ͠ೋͱىಈͯ͘͠Εͳ ͍ͱใ͕ͱΕͳ͍
iOS൛ͷ࣮࣌ͷҙ • ParseCrashReportͱॏෳΤϥʔ͕ൃੜ͢Δ • GoogleʮnotificationʹҠߦ͠Ζʯ
͓͠·͍ • https://firebase.google.com/docs/crash/ • [Qiita]Firebase crashͷಋೖTipsʢAndroidฤʣ • http://qiita.com/yamacraft/items/bc224ea7003c763f7118 • [Qiita]Firebase
crashͱParseCrashReportingͰduplicate symbolΤϥʔ͕ൃੜ͢Δ • http://qiita.com/yamacraft/items/7bd6b45d7d08b5cbaeec