Name
Android Basics

Code
3956

Duration
40 Hours

Description
Android is an open source platform developed by Google for mobile development. Applications for the Android platform are developed in Java. This course overviews Android's basic topics. Doing your first steps this is the course you should take.

Population
Java Developers

Objectives
Become familiar with the Android platform and be capable of developing simple applications.

Prerequisites
Practical experience in Java SE applications development.

Topics
Introduction
What is Android?
Android SDK
Android JVM
The Software Stack
The Development Tools (ADT)
User Interface
Installing Development Tools
Content Providers
Services
Intents
Activities
Views
Configuration File
Simple Hello World
Application Artifacts
Asset Packging Tool
Entry Point Activity
Intent
Calling Other Activities
The Activities Stack
Paused & Stopped Activities
SQLite Database
System Management
Separated Processes
Component & Integration Architecture
Application Resources
Introduciton
What are Resources?
String Resources
Layout Resources
Code Samples
Resource Reference Syntax
Compiled Resources
Compiled Animation Files
Compiled Bitmaps
Compiled UI View Definitions
Compiled Arrays
Compiled Colors
Compiled Strings
Compiled Styles
Compiled Arbitrary Raw XML Files
Uncompiled Resources
The .apk File
Assets
Assets & Resources Directory Structure
The Intent Concept
Introduction
Intent Filter
Use Intent to Start Activity
Android Available Intentions
Code Samples
Intent Categories
Late Run-Time Binding
Use Intent to Start Service
Broadcast Receivers
The Intent Object Structure
The Intent Component Name
The Intent Action
The Intent Data
The Intent Category
The Intent Extras
The Intent Flags
Intents Resolution
Intent Filter Structure
The Action Test
The Category Test
The Data Test
Multiple Matches
Android Predefined Intents
Samples
User Interface Controls
Introduction
GUI Sample in Source Code
GUI Sample in XML
GUI Sample in XML & Source Code
TextView
TextView Sample
TextView Style Sample
EditText
EditText Sample
AutoCompleteTextView
AutoCompleteTextView Sample
MultiAutoCompleteTextView
MultiAutoCompleteTextView Sample
Button
Button Sample
ImageButton
ImageButton Sample
ToggleButton
ToggleButton Sample
CheckBox Contorl
CheckBox Control Sample
RadioButton Control
RadioButton Control Sample
ListView
ListView Sample
GridView Control
GridView Control Sample
Date & Time Controls
Gallery Controller
MapView
WebView
Layout Managers
Introduction
LinearLayout
Layout Weight
Gravity
Samples
TableLayout
Padding Properties
RelativeLayout
AbsoluteLayout
FrameLayout
TabsHost
Menus and Dialogs
Introduction
Menu Interface
MenuItem Interface
SubMenu Interface
Menu Items Group
Menu Items Attributes
Container Menu Items
System Menu Items
Secondary Menu Items
Alternative Menu Items
Creating Menu
Sample
Menu Items Groups
Menu Items Events Handling
Overriding Callback Function
Define Listener
Using Intents
Expanded Menu
Icon Menus
Sub Menus
System Menus
Context Menus
Samples
Handling Menu Events
Creating Menu using XML
Alert Dialog
Prompt Dialog
Samples
Location Based Services
Introduction
The Map Key
The MD-5 Signature
Google Maps Key
Required Permissions
Code Sample
The Map Controller
Code Samples
Maps Overlays
Code Samples
The Geocoder Class
The Address Class
The LocationManager Class
The LocationListener Interface
The Debug Monitor Service (DMS)
Web Services
Introduction
The HttpClient Class
The HttpGet Class
The HttpPost Class
The HttpResponse Class
Code Samples
HTTP Get Request
HTTP Post Request
Code Samples
Timeout Exceptions
Threading Issues
Media Framework
Introduction
Playing Audio
Playing Video
Simple MP3 Player Demo
Simple Video Player Demo
Android Security Model
Introduction
Deployment
The keytool Utility
The jarsigner Utility
Deployment using Eclipse
Separated Processes
Declarative Permission Model
Application Life Cycle
Introduction
Activity Life Cycle Methods
The onStart() and onResume() Methods
The onPause() and onStope() Methods
Return Back to Previous Activity
The onStop() and onDestroy() Methods
The onCreate() Method
The onPause() Method
SQLite Database
Introduction
SQLite Implementation
The SQLiteOpenHelper Class
The onCreate() Method
The onUpgrade() Method
The onOpen() Method
The getWriteableDatabase() Method
The getReadableDatabase() Method
The SQLiteDatabase Class
The execSQL() Method
The insert() Method
The delete() Method
The rawQuery() Method()
Code Samples
The query() Method
Code Samples
File Management
Introduction
Creating Files
Accessing Simple Files
Accessing Raw Resources
XML Files Resources
SD Card External Storage
Activity Data
Introduction
The Intent Class
Start Activity Methods
Passing Data between Activities
Coherent User Experience
Code Sample
SMS Messages
Introduction
The SMSManager Class
The SEND_SMS Permission
Sending SMS
Receiving SMS
Telephony
Introduction
Initate Phone Calls
The android.telephony Package
The CallLocation Class
The PhoneStateListener Class
The ServiceState Class
The TelephonyManager Class
Limitations
Android VoIP
Java Language
Introduction
The Limits
Third Party Java Libraries
Debugging
Introduction
Eclipse Java Editor
Eclipse Java Debugger
Logcat
Android Debug Bridge
Delvik Debug Monitor Service
Traceview
Adapters
Introduction
Classes Hierarchy
The Adapter Purpose
The SimpleCursorAdapter Class
The ArrayAdapter Class
Bluetooth
Introduction
The Capabilities
The BluetoothAdapter Class
The BluetoothDevice Class
The BluetootnSocket Interface
The BluetoothServerSocket Class
The Bluetooth Class
Bluetooth Permission
Setting Up Bluetootn
Finding Devices
Querying Paired Devices
Devices Discovery
Enabling Discoverability
Devices Connection
Code Samples
Text To Speech
Introduction
Pico Engine
Demo
Single TTS Engine
Code Samples
Camera
Introduction
Auto Focus
Picture Parameters
Scene Modes
Accelerometer
Introduction
The SensorManager Class
The SensorListenr Interface
Compass
Introduction
The SensorManager Class
The SensorListenr Interface
Vibration
Introduction
The Vibrator Class
Vibration Sequences
WiFi Connectivity
Introduciton
The WifiManager Class
User Permissions
Searching for Hot Spots
Connecting Hot Spots
Networking
Introduction
Java Networking Classes
Android Networking Classes
Apache Netwokring Classes
Device Rotation
Introduction
Two XML Layout Documents
Code Samples
Localization
Introduction
Default Resources
Current Locale
Testing
Custom Locale
Code Samples
Speech Input
Introduction
The RecognizerIntent Class
Start Speech Recognition
Google Server Side
The Language Model
Free Form Language Model
Web Search Language Model
Development Tools
Introduction
The aapt Tool
The adb Tool
The android Tool
The ddms Tool
The dx Tool
The draw9patch Tool
The emulator Tool
Instant Messaging
Introduction
Jabber Protocol
GTalk Interaction