Android 101 - Manuel Vicente Vivo

Post on 07-Jan-2017

250 views 5 download

Transcript of Android 101 - Manuel Vicente Vivo

S

Android 101 Manuel Vicente Vivo

@manuelvicnt

@CapitalOneGeek

Why?

S  1.4 billion active Android devices

Android 101 @manuelvicnt

Android Fundamentals

S  Java = programming Language

S  APK = package format for deployment to device

Android 101 @manuelvicnt

Code Structure

Android Manifest File / Gradle A

ctiv

itie

s

Re

sou

rce

s

Vie

ws

Layo

uts

Oth

ers

Android 101 @manuelvicnt

Log

ic

Manifest.xml

S  Unique ID of the app (package name)

S  Name and Icon

S  Activities declaration

S  Required permissions

Android 101 @manuelvicnt

Gradle

S  Open source build automation system.

S  Deals with:

S  External dependencies.

S  Android requirements:

S  Target version

S  Min version

S  Different environments:

S  Release

S  Test

Android 101 @manuelvicnt

Project Folders

S  Java Source Code (java)

S  Static resources (res)

S  drawable: for images (xml, png, jpg)

S  layout: views description (xml)

S  values: raw properties (xml)

Android 101 @manuelvicnt

Android Fragmentation

S  Resources per device configuration

S  Dynamic device capabilities

Android 101 @manuelvicnt

Activity

S  Represents a single screen with a User Interface

S  Intents S  Asynchronous messages

sent by applications to perform actions. S  Launch a different

Activity.

S  Run a Service.

Android 101 @manuelvicnt

Activities Lifecycle

Android 101 @manuelvicnt

Views

Toolbar

View Pager

TextView

EditText

Button

ImageView

Android 101 @manuelvicnt

Layouts

S  Layouts and Views properties: Width & Height S  MatchParent : make it as big as the parent S  WrapContent: make it big enough to enclose

its content

Android 101 @manuelvicnt

Others

S  Fragments

S  Services

S  Content Providers

S  Broadcast Receivers

S  Notifications

Android 101 @manuelvicnt

Innovate with Android

S  Fingerprint Authentication (Android Imprint)

S  OCR (Optical Character Recognition)

S  NFC technology

S  Android Wear & Auto

S  Google Now

S  …

Android 101 @manuelvicnt

Tools

S  Android Studio

S  Android device/emulator

S  Ideas

S  Persistence

Android 101 @manuelvicnt

Android 101 example https://github.com/manuelvicnt/Android101

Android 101 @manuelvicnt

Integrate your Website

S  Make your website an Android App.

S  Used in deployed Android apps.

S  Smart error handling for no Internet Connection.

S  The developer is in the room! Talk to him to add new functionality :)

S  @jgarciabt

https://github.com/jgarciabt/SmartWebView

Android 101 @manuelvicnt

Nessie – Capital One API api.reimaginebanking.com

S  Customers

S  Accounts

S  Transactions

S  …

Want a price?

Android 101 @manuelvicnt

https://github.com/manuelvicnt/NessieC1

S  Price goes to the best use of Nessie.

S  Take a look at the Android example.

S  API available for other technologies

Questions?

Manuel Vicente Vivo

@manuelvicnt