Monday, April 25, 2011

Getting Started with Android Development (Day 1)- Orientation

General Course Outline

  1. Android Fundamental
  2. Android User Interface
  3. Building Android Application
  4. Data storage for Android Applications
  5. Working with Resources in Android
  6. Communication via internet
  7. Building location based application (GPS access, mapping, and geo search)
  8. Creating background service
  9. Testing and deploying android applications
--------------------------------------------------------------------------------------------------------------------------------
Android Fundamental: Day 1

  1. General Introduction to Android Platform
  2. Reasons for Learning Android
  3. Android Basics
  4. Setup Development Environment
  5. Kick start with a Real Application
  6. Basic Application Structure
  7. Basic Android Application Anatomy
  8. Activity
  9. Different Types of Activities
  10. Intents: Activating Components
Today We’re Covering…

  1. General Introduction to Android Platform
  2. Reasons for Learning Android
  3. Prerequisites
  4. Setup Development Environment
  5. Kick start with a Real Application
  6. Application Structure
  7. Android Application Anatomy
  8. Some Exciting Example
 
We’re NOT Covering…
Core Layered Architecture with lots of heavy technical stuff right now.
Because we love to learn and evolve with fun slow and steady.

Prerequisites
We’ll need at least basic understanding of how to program in Java/C#. Android programming is done using Java syntax, plus a class library that resembles a subset of the Java SE library (plus Android-specific extensions)..
We’ll need some basic OOP concept
--------------------------------------------------------------------------------------------------------------------------------
What is Android
Android is a software stack for mobile devices that includes an operating system, middle ware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language. 
 
Google describes Android as:
The first truly open and comprehensive platform for mobile devices, all of the software to run a mobile phone but without the proprietary obstacles that have hindered mobile innovation.

But what’s so exciting about this???
Answer will be apparent very soon ;)
--------------------------------------------------------------------------------------------------------------------------------
 Android Features
  1. Application framework
  2. Dalvik virtual machine
  3. Integrated browser
  4. Optimized graphics 
  5. SQLite
  6. Media support 
  7. GSM Telephony
  8. Bluetooth, EDGE, 3G, and WiFi
  9. Camera, GPS, compass, and accelerometer  
  10. Rich development environment 
 
We’ll cover each of these features in our corresponding sessions
--------------------------------------------------------------------------------------------------------------------------------
  Why Android?
Technical Advantages
Android is built upon an open-source platform, and most of the Android code is released under the free software/open source Apache License.
Rich and easy to integrate feature sets.
Android applications are written in the Java programming language, which is a powerful, mature and very widely adopted language.
Easy to learn than Apple’s Objective-C
Inter-Application communication is easier.
Business Advantages
Android Market — is much more of an open marketplace than Apple‘s iTunes App Store.
No delay for approval of submitted application. So you can reach your users fast.
   
Fastest growing smartphone platform
Business Opportunities
Android market
  Android Market is the online software store developed by Google for Android devices. An application program ("app") called "Market" is preinstalled on most Android devices and allows users to browse and download apps published by third-party developers, hosted on Android Market. As of December 2010 there were about 200,000 games, applications and widgets available on the Android Market, with an estimated 2.5 billion total downloads.
Other distribution channels:
Revenue can be earned by:
1.Paid Applications
2.Free Applications with ads
  
Freelancing Opportunities
 
 





Similar trend is seen in other freelancing sites 
-------------------------------------------------------------------------------------------------------------------------------- 
Position of Android  Platform in Smartphone industry

Some Statistics







What is Android
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.

Google describes Android as:
The first truly open and comprehensive platform for mobile devices, all of the software to run a mobile phone but without the proprietary obstacles that have hindered mobile innovation.

But what’s so exciting about this???
We have answered it.
--------------------------------------------------------------------------------------------------------------------------------
Android Features
Features

1.Application framework
2.Dalvik virtual machine 
3.Integrated browser
4.Optimized graphics 
5.SQLite 
6.Media support 
7.GSM Telephony 
8.Bluetooth, EDGE, 3G, and WiFi 
9.Camera, GPS, compass, and accelerometer 
10.Rich development environment 
We’ll cover each of these features in our corresponding sessions
--------------------------------------------------------------------------------------------------------------------------------
General Course Outline
  1. Introduction to Android and Mobile Devices
  2. Setting up Development Environment
  3. Application Architecture and Lifecycle
  4. Java Language Basics and Syntax
  5. Object Oriented Programming in Java
  6. Vertical and Horizontal Libraries in Java
  7. Object Oriented Principles and Practice
  8. Building Android Applications
  9. Android User Interface
  10. Common Controls
  11. Data Storage and Relational Database: SQLite
  12. Android Application Components: Activity, BroadcastListener, Service, Content Provider
  13. Maps, Geocoding and Location Based Services
  14. Communication with Internet
  15. RESTful Web Services
  16. Working with Multimedia
  17. Basic Game Development Concepts
  18. Performance Tuning
  19. Some More about Object Oriented Programming
  20. Debugging, Testing & Deploying Android Applications (with Digital Signature)
---------------------------------------------------------------------------------------------------------------------------
Learning Android App Development

Prerequisites
1.We’ll need at least basic understanding of how to program in Java/C#. Android programming is done using Java syntax, plus a class library that resembles a subset of the Java SE library (plus Android-specific extensions).
2.We’ll need some basic OOP concept.


Questions?