Slide 1

Slide 1 text

App Development (with an Android bias) Bristol University Scott Alexander-Bown @scottyab

Slide 2

Slide 2 text

Scott Alexander-Bown ●  Senior Developer @viaForensics ○  Consultancy & training for Independently Mobile ●  Co-author Android Security Cookbook ●  Co-founder SWmobile meetup group ○  meetup.com/swmobile

Slide 3

Slide 3 text

Agenda •  Android in 60 seconds •  Android Ecosystem •  Building Apps •  Dev tips & quick wins •  Testing •  Design •  Vs iOS •  What I love about app development •  How to get hired (according to me)

Slide 4

Slide 4 text

Android in 60 seconds •  Open source •  Linux based •  Java •  Permissions •  Resources framework o  i.e build for variety •  Side load apps

Slide 5

Slide 5 text

Ecosystem: Android is No.1 https://commons.wikimedia.org/wiki/File:World_Wide_Smartphone_Sales_Share.png

Slide 6

Slide 6 text

Ecosystem: Playstore •  $25 developer registration fee •  No approval •  Alpha and Beta distribution •  Staggered distribution •  Automated security testing/monitoring •  Alternative app stores

Slide 7

Slide 7 text

Development Environment

Slide 8

Slide 8 text

Development Tools •  Eclipse o  with Android Developer Tools plugin •  IntelliJ IDEA o  with Android plugin •  Android Studio o  Bleeding edge

Slide 9

Slide 9 text

Building Apps: watch out for •  What not to do…

Slide 10

Slide 10 text

Building Apps: Be Agile •  Small tested iterations •  Show customers often

Slide 11

Slide 11 text

Quick wins: open source community •  SQLCipher •  Google GSON •  Fundapter •  Anything from •  Square •  CommonsWare •  More: inappsquared.com/devappsdirect.html

Slide 12

Slide 12 text

Quick wins: mbass •  User auth/Social login (google, fb, twitter) •  User management •  Data storage o  save and sync data objects o  files (large files) •  Analytics •  Push messaging

Slide 13

Slide 13 text

Pro tips •  Fragments (componentize your UI) •  AsyncTask use an IntentService •  EventBus (component communication) •  Use styles, dimens and colors.xml •  dip not px

Slide 14

Slide 14 text

Fragmentation??? This. Is. Differentiation!!!

Slide 15

Slide 15 text

Fragmentation: quick wins •  Android compatibility library •  Google Play services •  NineOldAndroids •  HoloEverywhere

Slide 16

Slide 16 text

Fragmentation: platform versions November 1, 2013

Slide 17

Slide 17 text

Getting help •  Android docs, training & samples •  Androiddevweekly.com •  Stackoverflow •  Google plus (bit.ly/g_andev) •  YouTube o  DevBytes o  ADiA o  Google IO •  Busy coders guide to Android o  by Mark Murphy

Slide 18

Slide 18 text

Testing •  Hardware o  Cheap Samsung - Ace / S3 o  Nexus 5 o  10” tablet - Nexus 10 •  Emulator o  GenyMotion.com •  Services o  Errorlytics - Crittercism.com o  Crowd source bug testing - UTest.com o  Cloud based UI testing - TestDroid.com

Slide 19

Slide 19 text

Design

Slide 20

Slide 20 text

Keep it simple

Slide 21

Slide 21 text

Design patterns

Slide 22

Slide 22 text

Design: Inspiration •  Google Playstore •  Gmail, Google+ & others •  Pocket •  Expedia •  Timely •  More examples: o  androidniceties.tumblr.com o  android-app-patterns.com

Slide 23

Slide 23 text

Design: resources •  developer.android.com/design •  android-holo-colors.com •  Android asset studio bit.ly/andasset o  Icons o  Action bar style o  Device frame generator

Slide 24

Slide 24 text

Vs iOS

Slide 25

Slide 25 text

Android Win o  Device choice o  Customisation o  All apps are equal o  True background tasks o  NFC o  Resources framework iOS Win •  Flagship devices •  Core Animation •  Core Data •  Users upgrade to latest OS •  Clients, Managers, Designers have/ know them •  Paid apps do better Vs iOS

Slide 26

Slide 26 text

Android everywhere

Slide 27

Slide 27 text

What I love about app development •  App/mobile is now mainstream •  New stuff •  Skills •  Devices •  Yearly update of mobile platforms •  Software that’s used by millions world wide •  No barriers and lots of cloud API’s

Slide 28

Slide 28 text

How to get hired (IMO) •  Enthusiasm for mobile (and development) •  Example work (no excuses) •  Uni project •  Hack-a-thon •  Contribute to community •  Stackoverflow •  Github •  No bullshit!

Slide 29

Slide 29 text

Thanks for listening

Slide 30

Slide 30 text

Q&A | Contact | Feedback ●  [email protected] ●  meetup.com/swmobile ●  github/scottyab ●  @scottyab Next meetup: 4th Dec

Slide 31

Slide 31 text

Q&A ideas • Working in an Agency vs Product company • Source control • Salaries • Contracting • Networking