Top Banner
讓你 app 優雅的 crash 三部曲 Hokila MOPCON 2013
67

讓你的App優雅的crash三部曲

Jan 27, 2015

Download

Business

Hokila Jan

MOPCON 2013
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 讓你的App優雅的crash三部曲

讓你 app 優雅的 crash 三部曲

Hokila

MOPCON 2013

Page 2: 讓你的App優雅的crash三部曲

about me

•iOS developer

•ex-outsourcing app company

•enterprise app

•Cocoaheads Taipei

•Splashtop

Page 3: 讓你的App優雅的crash三部曲

Before Start

Page 4: 讓你的App優雅的crash三部曲

如果app不會crash的可以出去了

Before Start

Page 5: 讓你的App優雅的crash三部曲

如果app不會crash的可以出去了

等下的demo沒有crash 那就是失敗了

Before Start

Page 6: 讓你的App優雅的crash三部曲

我當app開發者這麼久,我發現一件事,通常使用者不會report crash,而是直接給一顆心評價

MOPCON 2012

源起

Page 7: 讓你的App優雅的crash三部曲
Page 8: 讓你的App優雅的crash三部曲

直接給一顆星

Page 9: 讓你的App優雅的crash三部曲

直接給一顆星

直接給一顆星

Page 10: 讓你的App優雅的crash三部曲

直接給一顆星

直接給一顆星

直接給一顆星

Page 11: 讓你的App優雅的crash三部曲

直接給一顆星

直接給一顆星

直接給一顆星

Page 12: 讓你的App優雅的crash三部曲

•app 如果4顆星以下佔多數,那一定是哪裡錯了

拿到(很多)一顆星

Page 13: 讓你的App優雅的crash三部曲

•app 如果4顆星以下佔多數,那一定是哪裡錯了

拿到(很多)一顆星

•發現一顆星很多,趕快修bug上新版本洗評價

Page 14: 讓你的App優雅的crash三部曲
Page 15: 讓你的App優雅的crash三部曲

crash rate?

•official app?

•memory leak

•0.1% ~0.3%

Page 16: 讓你的App優雅的crash三部曲

首部曲

crash 後

Page 17: 讓你的App優雅的crash三部曲

首部曲

crash 後可以不要給我一顆星嗎

Page 18: 讓你的App優雅的crash三部曲

怒氣發洩機制

Page 19: 讓你的App優雅的crash三部曲

托球給他殺 出現時機很重要

Page 20: 讓你的App優雅的crash三部曲
Page 21: 讓你的App優雅的crash三部曲

log 蒐集

Page 22: 讓你的App優雅的crash三部曲
Page 23: 讓你的App優雅的crash三部曲

•怒氣發洩機制

•詳細log

!

•error code

crash 後

Page 24: 讓你的App優雅的crash三部曲
Page 25: 讓你的App優雅的crash三部曲
Page 26: 讓你的App優雅的crash三部曲

正常⼈人都看不懂

Page 27: 讓你的App優雅的crash三部曲

error code

Page 28: 讓你的App優雅的crash三部曲

用文字敘述取代error code

Page 29: 讓你的App優雅的crash三部曲
Page 30: 讓你的App優雅的crash三部曲

和View 結合

Page 31: 讓你的App優雅的crash三部曲
Page 32: 讓你的App優雅的crash三部曲
Page 33: 讓你的App優雅的crash三部曲
Page 34: 讓你的App優雅的crash三部曲
Page 35: 讓你的App優雅的crash三部曲

demo uservoice

Page 36: 讓你的App優雅的crash三部曲

•許多負面評價留在app裡

•更了解user對app的觀感

•有些問題user彼此幫忙解決

benefit

Page 37: 讓你的App優雅的crash三部曲

•怒氣發洩機制

•詳細log

•error code

•user feedback / forum

crash 後

Page 38: 讓你的App優雅的crash三部曲

二部曲 crash 時

Page 39: 讓你的App優雅的crash三部曲

不是每個user 都會給comment 就是要給一顆星

UserVoice 缺點

Page 40: 讓你的App優雅的crash三部曲

不給comment /log那我就自己拿

Page 41: 讓你的App優雅的crash三部曲
Page 42: 讓你的App優雅的crash三部曲

•google analytics

•Crittercism

•Flurry

•Mixpanel

user tracking

Page 43: 讓你的App優雅的crash三部曲

iTune connect official crash report

Page 44: 讓你的App優雅的crash三部曲
Page 45: 讓你的App優雅的crash三部曲
Page 46: 讓你的App優雅的crash三部曲

demo crashlytics

Page 47: 讓你的App優雅的crash三部曲
Page 48: 讓你的App優雅的crash三部曲
Page 49: 讓你的App優雅的crash三部曲

benefit

•bug很多時、找到最值得解的bug

•順便找到user最喜歡用的功能

Page 50: 讓你的App優雅的crash三部曲

benefit

•bug很多時、找到最值得解的bug

•順便找到user最喜歡用的功能

•提高user黏滯性

Page 51: 讓你的App優雅的crash三部曲

Flurry

Page 52: 讓你的App優雅的crash三部曲
Page 53: 讓你的App優雅的crash三部曲

Flurry

Page 54: 讓你的App優雅的crash三部曲

Flurry

Page 55: 讓你的App優雅的crash三部曲
Page 56: 讓你的App優雅的crash三部曲

•Crashlytics

•Flurry

•Crittercism ($)

•TestFlight

•Google Analytics

•Bugsense ($)

•自己做的

Page 57: 讓你的App優雅的crash三部曲

catch exception

https://github.com/Hokila/LetMeCrash

https://speakerdeck.com/zonble/debug-debug

Debug Debug:Crash Report與各種常見疑難雜症

Page 58: 讓你的App優雅的crash三部曲

catch exception

https://github.com/Hokila/LetMeCrash

https://speakerdeck.com/zonble/debug-debug

Debug Debug:Crash Report與各種常見疑難雜症

Let’s demo

Page 59: 讓你的App優雅的crash三部曲

最後一部曲 crash 前

Page 60: 讓你的App優雅的crash三部曲

sales PM(UX) (SA) backEnd mobile clientUI

contribute cost/time consumption

首先我們要知道 app開發流程

Page 61: 讓你的App優雅的crash三部曲

要面對的問題

•app 賣不賣 / 有不有趣

•performance issue

•security issue

Page 62: 讓你的App優雅的crash三部曲

要面對的問題

•app 賣不賣 / 有不有趣

•performance issue

•security issue

http://www.slideshare.net/hokilaj/ios-app-security

iOS app security:analyze and defense

Page 63: 讓你的App優雅的crash三部曲

crash 前

•想想spec

•記得寫防禦程式,最好有alert

•除了依靠QA 外也要寫test code

•最常錯的是...

Page 64: 讓你的App優雅的crash三部曲

API verify

•testbed

•固定去看看api是否健在

•static query?

•問題都是出在access到不存在的資料

Page 65: 讓你的App優雅的crash三部曲

So

•後:crash 沒關係、不要給我一顆星就好

•中:要crash得有意義 (log、user tracking、feedback)

•前:做盡一切保護,避免crash

Page 66: 讓你的App優雅的crash三部曲

Thanks &Bye~~

Hokila !

mail [email protected] blog josihokila.blogspot.com FB fb.me/hokilaj

Page 67: 讓你的App優雅的crash三部曲

Thanks &Bye~~

Hokila !

mail [email protected] blog josihokila.blogspot.com FB fb.me/hokilaj