Slide 1

Slide 1 text

Developing FOSDEM Companion How to build a modern, user-friendly schedule app for Android Christophe Beyls FOSDEM 2015

Slide 2

Slide 2 text

About the Speaker ● Mobile developer from Brussels ● Developed a few apps during my spare time @BladeCoder 2

Slide 3

Slide 3 text

FOSDEM Companion ● FOSDEM schedule app for Android ● Source code available on GitHub https://github.com /cbeyls/fosdem-companion-android ● Published on: 3 ~2000 installs (2014)

Slide 4

Slide 4 text

History ● 2010: Original fosdem-android app by Michaël Uyttersprot, Pieter Iserbyt & Christophe Vandeplas ● 2012: Fork with small fixes by Christopher Orr ● 2013: Fork with Android 4 design (Action Bar) by Raphael Kallensee ● 2014: Rewritten from scratch Fragments, loaders, new DB layer ● 2015: Updated with Material Design. 4

Slide 5

Slide 5 text

Goals ● Fully Open Source (no proprietary libraries) ● Very fast ● Works offline ● Simple modern UI ● Tablet optimized track view ● Reference implementation of a few Android patterns ● Backwards compatible up to Android 2.1 5

Slide 6

Slide 6 text

Features 6

Slide 7

Slide 7 text

Features: Sessions 7 Prev. Next

Slide 8

Slide 8 text

Features: Maps 8

Slide 9

Slide 9 text

Features: Speakers 9

Slide 10

Slide 10 text

Features: Live Mode 10

Slide 11

Slide 11 text

Architecture Activity 11 Activity Fragments Loaders Database Layer UI Data

Slide 12

Slide 12 text

Architecture: UI Fragments everywhere 12

Slide 13

Slide 13 text

Architecture: Database ● No ORM library. Complex SQL Queries. ● Full Text indexes on (sub)titles, speaker names ● DB layer provides methods to map Cursor to Object model. 13 Days Tracks Events Persons Bookmarks Links Events-Pers

Slide 14

Slide 14 text

What’s new for 2015 Display the session in progress with a different color on track list. 14

Slide 15

Slide 15 text

What’s new for 2015 Improved notifications display on Android 5 and Android Wear. 15

Slide 16

Slide 16 text

What’s new for 2015: Material Design New text styles New icons Toolbar Material tabs (custom) 16

Slide 17

Slide 17 text

What’s new for 2015: Material Design Ripple effects (Android 5 only) CardView Floating Action Button (custom) 17

Slide 18

Slide 18 text

What’s new for 2015: Material Design 18

Slide 19

Slide 19 text

The End. Thank you for watching ! github.com/cbeyls/fosdem-companion-android 19 @BladeCoder