Slide 1

Slide 1 text

Boosting your mobile app. Small details, big impact. Montreal Mathieu Fillion

Slide 2

Slide 2 text

Mathieu Fillion 13 years​ chez Windows Phone Mobile / Xamarin / .NET​ / Flutter Azure​ I always had the user at the center of my attention and loved collaborating with designers.

Slide 3

Slide 3 text

Perception is all in the details.

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

First impression is key

Slide 6

Slide 6 text

First impression is often a form…

Slide 7

Slide 7 text

FORMS KeyboardType

Slide 8

Slide 8 text

• iOS: UIReturnType • Android: ImeOptions.ImeAction • Flutter: textInputAction FORMS Submit button Label

Slide 9

Slide 9 text

• 1 line of code • In the SMS, include the word “code” and use digits only once to help iOS recognize it One Time Codes on iOS Native

Slide 10

Slide 10 text

• SMS Consent API • Multiple flutter packages on pub.dev One Time Codes on Android

Slide 11

Slide 11 text

• SMS Retriever API • No user input, it’s magic! • SMS needs to include a hash from your signatures • “Your code is 123456. #adFE341v” • Get the hash with android keytool One Time Codes on Android

Slide 12

Slide 12 text

• Usage is increasing1 • 21% in 2022 • 34% in 2023 • Not only for Web! • Don’t forget the password reset flow so the manager updates the new password. • Code looks simple, but there are additional steps ---> Password managers 1Source: https://www.security.org/digital-safety/password-manager-annual-report/

Slide 13

Slide 13 text

iOS: set entitlements and host an apple-app-site-association file on Password managers https:///.well-known/apple-app-site-association Android : Host a Digital Asset Link file at https:///. well-known/assetlinks.json Those files contain signatures that prove a link between the app and the website domain.

Slide 14

Slide 14 text

Animating for a purpose

Slide 15

Slide 15 text

Animating for a purpose Teach

Slide 16

Slide 16 text

Animating for a purpose Engage

Slide 17

Slide 17 text

• Provide feedback • Confirm an action • Multiple options like Lottie or Rive Micro-animation https://lottiefiles.com/

Slide 18

Slide 18 text

Easing & speed

Slide 19

Slide 19 text

Dialogs Quiz time!

Slide 20

Slide 20 text

Dialog Quiz 1 Which screen is better?

Slide 21

Slide 21 text

Avoid “Yes” and “No.” Always use “Cancel” to title a button that cancels the alert’s action Dialog Quiz 1 - Apple Human Interface Guidelines

Slide 22

Slide 22 text

Which screen is better? Dialog Quiz 2

Slide 23

Slide 23 text

For an uncommon destructive action, use a different style of button to draw attention. Dialog Quiz 2

Slide 24

Slide 24 text

Which screen is better? Dialog Quiz 3

Slide 25

Slide 25 text

Cancel buttons are typically on the leading side of a row Dialog Quiz 3 – Apple Human Interface Guidelines Don’t place dismissive actions to the right of confirming actions –m3.material.io

Slide 26

Slide 26 text

Read through Apple and Google’s guidelines ● Apple Human Interface Guidelines ● https://m3.material.io/

Slide 27

Slide 27 text

• Platform-specific icons • Share is special Icons Means share on both!

Slide 28

Slide 28 text

• Show proper icon based on hardware • Avoid FaceID icon on Android. Icons

Slide 29

Slide 29 text

App rating

Slide 30

Slide 30 text

79% Read one review before installing

Slide 31

Slide 31 text

Core Hater <1% of people who have crashes, can’t install the app, don’t like your monetization or you customer support, have lost game progress etc. Key Stats Audiences Core Reviewers <1% of people who believe in giving good or balanced reviews. Non-Reviewers 98% of people are non-reviewers: they are enjoying the app or have quit already. Source: https://www.gamedeveloper.com/business

Slide 32

Slide 32 text

Now lets mix 50 reviews from core haters (1) with 50 reviews from core reviewers (4.5). You have just ended up with a 2.75 average. 50 reviews from core reviewers + = Conclusion: You need non reviewers into action and drown out the core haters. 2.75 average star rating 50 reviews from core haters Audience

Slide 33

Slide 33 text

• Find positive moments to prompt the user • After “X” successful significant actions • Games will prompt after a win or lucky event • Don’t prompt repetitively. • Find the perfect balance • Not too early, however you need a good volume of reviews. In app rating

Slide 34

Slide 34 text

• > 3 application launches. • > 3 completed primary actions. • > 5 days since the first application launch. • > 30 days since the last review request. • Feature flag Config example

Slide 35

Slide 35 text

Accessibility

Slide 36

Slide 36 text

~30% of users changed their text size setting Source: airbnb engineering blog

Slide 37

Slide 37 text

Mobile accelerators Leverage what a phone offers.

Slide 38

Slide 38 text

• Registering your pet with an animal hospital. • Taking a “profile” picture of a dog or a cat is hard! • Make noises with the phone speakers, so the pet looks at the camera. Phone speaker and camera

Slide 39

Slide 39 text

• So much quicker than typing • Character recognition running on-device • Barcodes and QR Codes are even easier Facilitate input with camera

Slide 40

Slide 40 text

• Think ahead of the user to prevent frustrations • Detect screenshots • Modify brightness • Offer multiple app options on iOS when deeplinking, especially for maps Mobile APIs

Slide 41

Slide 41 text

• Offer tactile feedback for an important action • Add to cart • Completing a form • Message sent • Mobile games • Don’t overuse it! Haptic feedback

Slide 42

Slide 42 text

• For sensitive apps (Health, Finance, etc.) • Mark the app as secure to prevent: • screenshots • screen recording/sharing • app preview when multi-tasking Extra privacy

Slide 43

Slide 43 text

• iOS offers Dynamic Island and Live Activities to provide continuous visual feedback. • Powered by the same push notification system behind the scene • Possible in Flutter with a little swift ! Live Activity

Slide 44

Slide 44 text

• Sports event score tracking • Fitness activity session • Food delivery tracking • Track wait time for when your table is read • Street parking reminders • Flight status and gate changes • … • Lots of possibilities! iOS : Live Activity

Slide 45

Slide 45 text

Ask me 2 questions Connect