Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Challenges and lessons from porting a complex iOS app to Android

Challenges and lessons from porting a complex iOS app to Android

Mike Dai Wang

March 27, 2017
Tweet

Other Decks in Technology

Transcript

  1. Agenda 1 - The iOS app & cutting scope 2

    - UI Design 3 - Process 4 - Architecture 5 - Lessons & challenges
  2. Admin Fan Messaging Scorekeeping Play by Play Game Recap Live

    Game Stream Player Stats Scheduling Roster / Lineup Teams IAP Baseball Logic
  3. Admin Fan Messaging Scorekeeping Play by Play Game Recap Live

    Game Stream Player stats Scheduling Roster / Lineup Teams IAP Baseball Logic
  4. Let engineers focus on engineering - CI & CD -

    Standardize coding style - Setup automation pipeline - Make use of tools - Have good test coverage
  5. Make use of great tools - Alternatives to Jenkins: Bitrise.io,

    Fastlane - Crash reporting: Crashlytics - Error tracking / logging: Rollbar - Analytics: Firebase, Facebook, Snowplow
  6. Get up to speed on Android quickly - Rely on

    automated checks and tests - Crash course on view lifecycle & Android SDK - Learn by doing - Modularize & limit impact - Decouple from Android - No one on an island alone
  7. Things to keep in mind - Engineers are new to

    Android - Efficient & parallel development - Maintainable - Testable - Technical debt
  8. Admin Fan Messaging Scorekeeping Play by Play Game Recap Player

    stats Roster / Lineup Teams Baseball Logic
  9. Admin Fan Messaging Scorekeeping Play by Play Game Recap Player

    stats Roster / Lineup Teams Baseball Logic
  10. Dagger - Scope depth - Use multi-binding or AndroidInjector -

    Component caching & reuse - Bloated application class - Asynchronous injection - Inject Observables
  11. - App launched by 5 month mark - Built an

    Android team - 4.5* review - biggest complaint: missing iOS features ¯\_(ツ)_/¯ - 99.6% crash free - >100k downloads - People are paying $