Building an Android client. Rohit Nayak Talentica Software

Similar documents
TUTORIALS AND QUIZ ANDROID APPLICATION SANDEEP REDDY PAKKER. B. Tech in Aurora's Engineering College, 2013 A REPORT

Introduction to Android

Basics. Bruce Crawford Global Solutions Manager

Android For Java Developers. Marko Gargenta Marakana

Hacking your Droid ADITYA GUPTA

directory to "d:\myproject\android". Hereafter, I shall denote the android installed directory as

ITG Software Engineering

Mobile Application Development

4. The Android System

Introduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University

ANDROID INTRODUCTION TO ANDROID

Workshop on Android and Applications Development

Graduate presentation for CSCI By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Tutorial: Android Object API Application Development. SAP Mobile Platform 2.3

Tutorial: Android Object API Application Development. Sybase Unwired Platform 2.2 SP02

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

App Development for Smart Devices. Lec #2: Android Tools, Building Applications, and Activities

An Introduction to Android

BEGIN ANDROID JOURNEY IN HOURS

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Praktikum Entwicklung Mediensysteme (für Master)

SDK Quick Start Guide

Mobile Phones Operating Systems

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

Android Application Development. Daniel Switkin Senior Software Engineer, Google Inc.

Jordan Jozwiak November 13, 2011

Mocean Android SDK Developer Guide

CS378 -Mobile Computing. Android Overview and Android Development Environment

Lecture 1 Introduction to Android

Android (Basic + Advance) Application Development

Android 多 核 心 嵌 入 式 多 媒 體 系 統 設 計 與 實 作

Android Development. Marc Mc Loughlin

Introduction to Android

Running a Program on an AVD

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

Android Application Development Distance Learning Program Brochure

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

Deep Inside Android. OpenExpo Zurich September 25 th, Gilles Printemps - Senior Architect. Copyright 2007 Esmertec AG.

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 2 Android Platform. Marco Picone

Introduction to Android

Introduction to Android Development. Ed Burnette

Developing Android Apps: Part 1

Module Title: Software Development A: Mobile Application Development

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Overview of CS 282 & Android

Android Architecture. Alexandra Harrison & Jake Saxton

Wiley Publishing, Inc.

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

Mobile Application Development 2014

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Mobile Applications Grzegorz Budzyń Lecture. 2: Android Applications

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

An Introduction to Android. Huang Xuguang Database Lab. Inha University

App Development for Android. Prabhaker Matet

Development. SriSeshaa Technologies. Table of Contents

Android Introduction. Hello Mihail L. Sichitiu 1

INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011

1. Introduction to Android

Smartphone market share

DEVELOPING MOBILE APPLICATIONS USING ANDROID

Getting started with Android and App Engine

5 reasons to choose Streamezzo SDK over Android SDK Page 2

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

Android Developer Fundamental 1

The Android Platform

Lab 4 In class Hands-on Android Debugging Tutorial

Android Development Tutorial. Human-Computer Interaction II (COMP 4020) Winter 2013

ANDROID OPERATING SYSTEM

Here to take you beyond Mobile Application development using Android Course details

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc)

Android Programming and Security

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

Android Geek Night. Application framework

Programming the Android Platform. Logistics

Mobile applications security Android OS (case study) Maciej Olewiński. Cryptographic Seminar r.

Development of a Handyman Mobile Application

Creating and Using Databases for Android Applications

Mobile App Design and Development

Introduction to Android. CSG250 Wireless Networks Fall, 2008

PubMatic Android SDK. Developer Guide. For Android SDK Version 4.3.5

Software development. Development requirements. Java. Android SDK. Eclipse IDE (optional)

Practical Android Projects Lucas Jordan Pieter Greyling

A Short Introduction to Android

Synthesis for Developing Apps on Mobile Platforms

MMI 2: Mobile Human- Computer Interaction Android

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

A software stack for mobile devices:

Transcription:

Building an Android client Rohit Nayak Talentica Software

Agenda iphone and the Mobile App Explosion How mobile apps differ Android philosophy Development Platform Core Android Concepts App Demo App Dissection

The iphone Phenomenon

http://en.wikipedia.org/wiki/file:iphone_sales_per_quarter.svg

http://www.techcrunch.com/2009/10/21/how-the-iphone-is-blowing-everyone-else-away-in-charts/

Mobile Limitations Screen size Battery Limitations CPU tick, memory refresh, screen lighting Speed Memory Keyboard

Usage Traits Universal, Always Available Small attention span Interruptible (calls, green light!) GPS Tap, Flick, Rotate, Pinch, Shake Accelerometer Voice, Texting Handwriting recognition Dropped calls, lack of coverage

Motorola Droid

Motorola Droid Android 2.0, 256MB 4.56-by-2.36-inch, 0.54 inch thick, 6oz, 480-by-854-pixel, 6hrs Camera: 5MP/4X flash, video rec Slide-out QWERTY keyboard Mail: Gmail, MS Exchange Google Maps Navigation

The Android mobile platform Linux 2.6 kernel Dalvik VM (.dex,.apk) Application framework SQLite, Integrated browser (Webkit) OpenGL graphics Media support GSM/CDMA, Wireless Camera, GPS, Accelerometer

Core Applications Email client SMS Calendar Maps Contacts

Criticisms / Issues Not a std linux distribution Not Java ME/SE, limited libraries Apps run only from on-board memory Version compatibility Obsolete search results

Android Stack

Application Framework Activity Manager: app life cycle, navigation stack Views: layout, widgets Content Providers: data storage/sharing Resource Manager: strings, images Notification Manager: alert mechanisms

Key Programming Concepts Activities Services Intents Receivers Content Providers

Activities Runnable Interacts with user Associated with views Requests data or services via Intents Services Runnable Background process MP3 player, polling sub-system

Receivers Broadcast receivers (low battery) Intent Receivers Intents registered with Android Content Providers Share data with activities / services Queries in the form of a URI content://contacts/people

Installing Dev Environment Java 5/6 Eclipse Android SDK $PATH ADT plugin Install Updates

Development Environment Eclipse ADT plugin Emulator, Device Controls Android Virtual Device Manager Dalvik Debug Monitor Service Debugger, LogCat File Explorer, Threads, Heap Physical Device Testing

Demo App Preview

Poolster Online football pools application Entities: Game, User Game Stake, Option, Ends To join User chooses an Option REST Webservice backend Clients: iphone, Grails, Android, Silverlight

Inside Poolster Directory Structure Manifest File App Launching Activity Life Cycle Layout Files Menu

AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.talentica.poolster" android:versioncode="1" android:versionname="1.0"> <uses-permission android:name="android.permission.internet"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".main" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name=".gameslist" android:label="@string/app_name"> </activity> <activity android:name=".login" android:label="@string/app_name"> </activity> </application> <uses-sdk android:minsdkversion="3" /> </manifest>

Inside Poolster - 2 The Main activity REST Client Object-XML marshal/demarshal Internationalization AdMobs Integration Position Database

Deploying Join Android Developer Program Eclipse Android Tool Export Signed Package Upload.apk file to Android Market

Resources http://developer.android.com Professional Android Application Development (Wrox) Android Application Development (O Riley) http://www.screamingpenguin.com/androidresources

Thanks