Slide 1

Slide 1 text

!ZPJDIJUHZ More about Crashlytics and Less about GDPR ;) Yoichi Tagaya Tokyo iOS Meetup / May 12, 2018 (%13(FOFSBM%BUB1SPUFDUJPO3FHVMBUJPO

Slide 2

Slide 2 text

!ZPJDIJUHZ About Yoichi Tagaya • An author of Swinject ‣ The most popular DI framework in iOS/Swift ‣ 2.4k+ GitHub stars • An engineering manager at Mercari ‣ Trying to make the best place to work at

Slide 3

Slide 3 text

!ZPJDIJUHZ Crashlytics IUUQTXXXGBCSJDJP

Slide 4

Slide 4 text

!ZPJDIJUHZ How to Use Crashlytics IUUQTEPDTGBCSJDJPBQQMFDSBTIMZUJDTUFTUDSBTIIUNMUSPVCMFTIPPUJOH func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]? ) -> Bool { Fabric.with([Crashlytics.self]) return true } -PHTBSFTFOUPOSFTUBSUPGBQQMJDBUJPODSBTI .VTUQBTTapplication:didFinishLaunchingWithOptions +VTUJOTUBMM$SBTIMZUJDTBOEBEEUIFGPMMPXJOHMJOF

Slide 5

Slide 5 text

!ZPJDIJUHZ Crashlytics is easy to use. Should we do anything else?

Slide 6

Slide 6 text

!ZPJDIJUHZ Crashlytics has more useful options

Slide 7

Slide 7 text

!ZPJDIJUHZ Add User Info to Crash Logs 4JOHMFUPONFUIPE 8IBUJTBEEFEUPDSBTIMPHT TFU6TFS*EFOUJpFS @ 6TFS*% TFU6TFS&NBJM @ &NBJM TFU6TFS/BNF @ 6TFSOBNF XIJDIDBOCFSFBMQFSTPOOBNF $POWFOJFOUUPDIFDLDSBTIMPHGSPNDVTUPNFSTVQQPSUJOGP /PUSFDPNNFOEFEUPVTF6TFS&NBJMBOE6TFS/BNF

Slide 8

Slide 8 text

!ZPJDIJUHZ Add Key/Value to Crash Logs 4JOHMFUPONFUIPE 8IBUJTBEEFEUPDSBTIMPHT TFU0CKFDU7BMVF @GPS,FZ 0CKFDUMJLF4USJOHGPSBLFZ TFU#PPM7BMVF @GPS,FZ #PPMWBMVFGPSBLFZ TFU*OU7BMVF @GPS,FZ *OUWBMVFGPSBLFZ TFU'MPBU7BMVF @GPS,FZ 'MPBUWBMVFGPSBLFZ $BOCFVTFEGPS3FNPUF$POpHTUBUF "#UFTUJOH WFSTJPOTPG EPXOMPBEFESFTPVSDFTPS+4WFSTJPOT -JNJUBUJPO.BYLFZTBOE,#GPSBLFZWBMVF +40/TUSJOHJGZPVOFFEBMPUPGLFZT

Slide 9

Slide 9 text

!ZPJDIJUHZ Add Custom Logs 'VODUJPO 8IBUJTBEEFEUPDSBTIMPHT $-4-PHW @GPSNBU BSHT "OZMPHTMPHHFECFGPSFUIFDSBTI 6TFSBDUJWJUJFTBDUJPOTUIBUNJHIUCFDBVTFTPGUIFDSBTI -JNJUBUJPO.BY,#MPH MJOFTJGDIBSBDUFSTMJOF 0MEMPHTBSFEFMFUFEPOPWFSqPX

Slide 10

Slide 10 text

!ZPJDIJUHZ Add Non-Crash Report 4JOHMFUPONFUIPE 'VODUJPOBMJUZ SFDPSE&SSPS @ $SFBUFBMPHFOUSZBTGBUBMFSSPS -PHTBSFDBUFHPSJ[FEBT/PO'BUBMT -PHTBSFTFOUUP$SBTIMZUJDTPOBQQSFMBVODI 4FSJPVTFSSPSTOPUDBVTJOHDSBTIFTDBOCFSFQPSUFE 0OMZMBUFTUFSSPSTGPMMPXFECZDSBTIDBOCFSFQPSUFE 3FNFNCFS0CTFSWFS&⒎FDUGPSIJHI$16DPTU %8"3' %FCVH8JUI"UUSJCVUFE3FDPSE'PSNBU VOXJOEJOH

Slide 11

Slide 11 text

!ZPJDIJUHZ Crashlytics Dashboard

Slide 12

Slide 12 text

!ZPJDIJUHZ How to See the Options $MJDLUPTFFEFUBJMT

Slide 13

Slide 13 text

!ZPJDIJUHZ Key/Value pairs ,FZWBMVFQBJST

Slide 14

Slide 14 text

!ZPJDIJUHZ Custom Logs $VTUPNMPHT GPMMPXJOHUIFDSBTI

Slide 15

Slide 15 text

!ZPJDIJUHZ User Info 6TFSOBNF 6TFS*% 6TFSFNBJM

Slide 16

Slide 16 text

!ZPJDIJUHZ Non-Fatal Logs /POGBUBMMPHT

Slide 17

Slide 17 text

!ZPJDIJUHZ GDPR

Slide 18

Slide 18 text

!ZPJDIJUHZ GDPR • General Data Protection Regulation • Handle private (personal) data of citizens living in Europe properly, e.g. ‣ Report/announce unauthorized data access in 3 days ‣ Remove data upon request from users ‣ Have data access policy and right controls

Slide 19

Slide 19 text

!ZPJDIJUHZ Private (Personal) Data • Name • Address • Email address • ID numbers (like social security number) • Passport information • Online data (IP address, location cookie) • Health/genetic data • Biometric data • Racial/ethnic data, political opinions, sexual orientation

Slide 20

Slide 20 text

!ZPJDIJUHZ Huge Fine 4% of annual worldwide sales ⚖ €20M Larger value is applied

Slide 21

Slide 21 text

!ZPJDIJUHZ Effective *NBHFIUUQTVQMPBEXJLJNFEJBPSHXJLJQFEJBDPNNPOTB&&"TWH • To EEA (Europian Economic Area) users • To companies even without HQs in EEA • On 25 May (to show compliance)

Slide 22

Slide 22 text

!ZPJDIJUHZ Problems with Crashlytics

Slide 23

Slide 23 text

!ZPJDIJUHZ User Name and Email Address 4IPVMEOPUTFOE 6TFSOBNFBOEFNBJMBEESFTT

Slide 24

Slide 24 text

!ZPJDIJUHZ Be Careful

Slide 25

Slide 25 text

!ZPJDIJUHZ More Info about GDPR • Guide to the General Data Protection Regulation ‣ https://ico.org.uk/for-organisations/guide-to- the-general-data-protection-regulation-gdpr/ • [Report] #GDPR Meetup: How to get GDPR ready #AWS #DataProtection ‣ https://dev.classmethod.jp/etc/event-report- gdpr-on-aws/