Android App Development 01 : Getting Start

49
Quick Start Anuchit Chalothorn [email protected] Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. 1

Transcript of Android App Development 01 : Getting Start

Page 1: Android App Development 01 : Getting Start

Quick StartAnuchit [email protected]

Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

1

Page 2: Android App Development 01 : Getting Start

About Me

Current● Senior Software Engineer @ SIPA● Writer @ thaiopensource.org● Open Source Contributor

Page 3: Android App Development 01 : Getting Start

Prerequisites

● Java Programming Language● Database Management System● Web Service● Web Application Programming ● Version Control System

Page 4: Android App Development 01 : Getting Start

Smartphone

● Mobile phone that offer more advanced computing ability, feature and connectivity

● Handheld computer integrated with mobile telephone

● They also provide their own operating system with application development framework

Ref: http://en.wikipedia.org/wiki/Smartphone

Page 5: Android App Development 01 : Getting Start

Smartphone Platforms

Smartphone platforms● Android● iPhone (iOS)● Blackberry● Windows Phone● Tizen● SailFish● Firefox OS● Ubuntu Touch

Page 6: Android App Development 01 : Getting Start

Tablet Platforms

Tablet Platforms● iPad (iOS)● Android Tablet● Surface (Windows)● Ubuntu Touch

Page 7: Android App Development 01 : Getting Start

Application Platforms

Platforms Language Remark

Android Java, C, C++ http://developer.android.com

iOS Object-C,HTML5 http://developer.apple.com

Blackberry C/C++,Java,HTML5,Air http://developer.blackberry.com

Windows C# http://dev.windowsphone.com/

Tizen C++ https://developer.tizen.org/

SailFish C++ https://sailfishos.org/develop.html

Ubuntu Touch QML, HTML5 https://wiki.ubuntu.com/Touch

Page 8: Android App Development 01 : Getting Start

Android is a Linux-based operating system designed primarily for touchscreen mobile devices such as smartphones and tablet computers.

What is Android ?

Page 9: Android App Development 01 : Getting Start

Why Android ?

Technical advantage● No need to pay, you can develop and test

in your own device● Open Source Platform● Java programming language● Rich and easy to integrate feature set● Development environment support in

Windows, Mac, Linux

Page 10: Android App Development 01 : Getting Start

Why Android ?

Business advantage● Google Play

○ Integrated market app○ One time low registration fee ($25)

● Many Distribution Channel● Low Barrier to Market

○ No approval process○ Less restriction copyright issue

Page 11: Android App Development 01 : Getting Start

Opportunities

● Google Play● Amazon Appstore for Android● Cisco Enterprise Market● Blackberry App World● 3th party distribution channel

○ Andspot○ Handango○ Getjar○ SlideMe○ AppBrain○ etc

Page 12: Android App Development 01 : Getting Start

Monetize Opportunities

● Paids Apps● In-App Billing● Free Apps with Ads

○ AdMob○ AdWhirl○ Mobclix○ etc

Page 13: Android App Development 01 : Getting Start
Page 14: Android App Development 01 : Getting Start

Developer Console

Page 15: Android App Development 01 : Getting Start

APK

Page 16: Android App Development 01 : Getting Start

Pricing and Distribution

Page 17: Android App Development 01 : Getting Start

Device Compatibility

Page 18: Android App Development 01 : Getting Start

User Install by Android Version

Page 19: Android App Development 01 : Getting Start

User Install By Device

Page 20: Android App Development 01 : Getting Start

User Install By Country

Page 21: Android App Development 01 : Getting Start

User Install By Language

Page 22: Android App Development 01 : Getting Start

Monetize your App with Admob

Page 23: Android App Development 01 : Getting Start

Admob revenue chart

Page 24: Android App Development 01 : Getting Start

Architecture Diagram

Page 25: Android App Development 01 : Getting Start

Android Version

● Android 1.0● Android 1.1● Android 1.5 Cupcake● Android 1.6 Donut● Android 2.0 - 2.1 Eclair● Android 2.2 - 2.2.3 Froyo● Android 2.3 - 2.3.7 Gingerbread

Page 26: Android App Development 01 : Getting Start

Android Version

● Android 3.0 - 3.2 Honeycomb● Android 4.0 - 4.0.4 Ice Cream Sandwich● Android 4.1 Jelly Bean● Android 4.2 Jelly Bean● Android 5.0 Key Lime Pie

Page 27: Android App Development 01 : Getting Start

Diagram

Page 28: Android App Development 01 : Getting Start

Diagram

Source : http://developer.android.com/about/dashboards/index.html

Page 29: Android App Development 01 : Getting Start

Diagram

Page 30: Android App Development 01 : Getting Start

Android Devices

● Smartphone● Tablet● Smart TV● TV Box● Android Box, Android Stick● Multimedia Box● etc

Page 31: Android App Development 01 : Getting Start
Page 32: Android App Development 01 : Getting Start

Diagram

Page 33: Android App Development 01 : Getting Start

Developer Tools

● Java SDK (6 is better)● Eclipse or ADT bundle ● Android Development Toolkit (ADT)● Android SDK● Smartphone or Tablet (optional)● Install emulator images a.k.a AVD

* If you want to use an emulator your machine must have at least 4GB of ram, atom image and intel hardware accelerator software.

Page 35: Android App Development 01 : Getting Start

30 Minutes install software

● Java SDK● Eclipse or ADT bundle● Install ADT● Install Android SDK Tools● Install Android Platform Tools● SDK Platform & Google APIs (10,17)● Install System images (Atom)● Android Support Library● Google Admob Ads SDK● Intel x86 Emulator Accelerator (HAMX)

Page 36: Android App Development 01 : Getting Start
Page 37: Android App Development 01 : Getting Start
Page 38: Android App Development 01 : Getting Start

Create your first App

● Create new Android project...● Identify project name or application name● Identify package name usually use reverse

domain name eg: com.example.appname● Select Minimum API Level● Select Target API Level● Select Compile with API Level● Theme

Page 39: Android App Development 01 : Getting Start
Page 40: Android App Development 01 : Getting Start

Diagram

Page 41: Android App Development 01 : Getting Start
Page 42: Android App Development 01 : Getting Start

Running your App

Only 2 ways to test your application● Running on your device

○ this is better way but don't forget to install USB driver for debugging and set your device to USB debugging

● Running on your emulator○ very slow, you should accept this issue T_T

Page 44: Android App Development 01 : Getting Start

Project structure

● src● gen● assets● libs● res

○ drawable○ layout○ menu○ values

● AndroidManifest.xml

Page 45: Android App Development 01 : Getting Start

Building simple UI

● Play with UI designer● Put some widgets to your activity

○ Label○ Text Editor○ Button○ etc

● Run your app again...

Page 46: Android App Development 01 : Getting Start
Page 47: Android App Development 01 : Getting Start

Debug Tools

Play with debug tools● Log● DDMS

Page 48: Android App Development 01 : Getting Start
Page 49: Android App Development 01 : Getting Start

End