Android

Get Started. It's Free
or sign up with your email address
Android by Mind Map: Android

1. Android UI Development

1.1. CompositeViews

1.1.1. SlidingDrawer

1.1.1.1. Listeners

1.1.1.1.1. onDrawerClose

1.1.1.1.2. onDrawerOpen

1.1.1.2. More

1.1.2. Tabbed panel

1.1.3. GridView

1.1.4. ScrollView

1.1.5. HorizontalScrollView

1.1.6. WebView

1.2. Layouts

1.2.1. Types

1.2.1.1. LinearLayout

1.2.1.2. RelativeLayout

1.2.1.3. TableLayout

1.2.1.4. FrameLayout

1.2.1.5. AbsoluteLayout

1.2.2. Example: Handling portraits and landscape modes

1.3. UI Components

1.3.1. Basic

1.3.1.1. Text

1.3.1.1.1. Password

1.3.1.1.2. EditText

1.3.1.1.3. Email

1.3.1.1.4. Phone

1.3.1.1.5. Time

1.3.1.1.6. Date

1.3.1.1.7. Number

1.3.2. Form

1.3.2.1. TextView

1.3.2.2. Button

1.3.2.3. ToggleButton

1.3.2.4. Checkbox

1.3.2.5. RadioButton

1.3.2.6. Spinner

1.3.2.7. RatingBar

1.3.3. More

1.3.3.1. image

1.3.3.1.1. ImageView

1.3.3.1.2. ImageButton

1.3.3.1.3. VideoView

1.3.3.2. Time_Date

1.3.3.2.1. time_picker

1.3.3.2.2. datepicker

1.3.3.2.3. CalendarView

1.3.3.2.4. AnalogClock

1.3.3.2.5. DigitalClock

1.3.4. FAQ

1.4. Listeners

2. Android Introduction

2.1. Overview

2.1.1. What actually happens

2.1.1.1. http://markfaction.files.wordpress.com/2012/07/dalvikoperation.png

2.1.1.2. Note

2.1.2. Ok. what is an APK

2.1.2.1. What it is

2.1.2.1.1. Android application package file

2.1.2.2. What does it consist of

2.1.2.2.1. Dalvik executable

2.1.2.2.2. Resources

2.1.2.2.3. Native libraries

2.1.3. Application distribution

2.1.3.1. via web

2.1.3.2. directly install

2.1.3.3. via app store

2.1.4. FAQ

2.1.5. Architecture

2.1.5.1. Architecture stack

2.1.5.1.1. Architecture stack

2.1.5.2. Dalvik

2.1.5.2.1. virtual machine designed specifically for Android

2.1.5.2.2. designed with 2 main goals in mind - battery life and processing power

2.2. Installation and setup

2.2.1. Android SDK

2.2.2. Eclipse

2.2.3. ADT plugin for eclipse

2.2.3.1. Android project wizard

2.2.3.2. Graphical layout editors

2.2.3.3. SDK and AVD managers

2.2.3.4. App deployment to emulators and hand sets

2.2.4. Install android packages

2.2.5. Create an AVD

2.2.6. Questions

2.2.6.1. Do I need a device in order to run Android

2.2.7. Setup SDK folder in Eclipse -> Preferences

2.3. Simplest android program

2.3.1. Different parts

2.3.1.1. Activity

2.3.1.2. Android Manifest file

2.3.1.3. Layout xml file

2.3.1.4. Strings.xml

2.3.1.5. The R file

2.3.1.6. Test Environment

2.3.1.6.1. Emulator

2.3.1.6.2. Mobile Device

2.3.2. Covers

2.3.2.1. Creation of an Activity

2.3.2.2. Using the emulator

2.3.2.3. Debugging with the phone

2.3.2.4. Sharing mobile screen in pc

2.3.3. FAQ

2.4. Prerequisite

2.4.1. Skills

2.4.1.1. Eclipse

2.4.1.2. Java

2.4.1.2.1. Basic programming

2.4.1.2.2. OOPS

2.4.1.2.3. how to access java libraries.

2.4.1.2.4. Design pattern - template method pattern.

2.4.2. Software

2.4.2.1. JDK

2.4.2.2. Eclipse

2.4.3. FAQ

2.5. Getting started

2.5.1. What is

2.5.1.1. free and open mobile OS

2.5.1.2. Google releases the code under apache licence

2.5.1.3. built on top of linux

2.5.1.4. History

2.5.2. Why android

2.5.2.1. support different devices - tablets, g tv, digital photo frames etc.,

2.5.2.2. A large developer community

2.5.2.3. written in java, one of the most popular dev languages

2.5.2.4. Cheap and easy development

2.5.3. Android versions

2.5.3.1. Graphical

2.5.4. FAQ

2.6. Understanding Android

2.6.1. What actually happens

2.6.1.1. http://markfaction.files.wordpress.com/2012/07/dalvikoperation.png

2.6.1.2. Note

2.6.2. Ok. what is an APK

2.6.2.1. What it is

2.6.2.1.1. Android application package file

2.6.2.2. What does it consist of

2.6.2.2.1. Dalvik executable

2.6.2.2.2. Resources

2.6.2.2.3. Native libraries

2.6.3. Application distribution

2.6.3.1. via web

2.6.3.2. directly install

2.6.3.3. via app store

2.6.4. FAQ

2.6.5. Architecture

2.6.5.1. Architecture stack

2.6.5.1.1. Architecture stack

2.6.5.2. Dalvik

2.6.5.2.1. virtual machine designed specifically for Android

2.6.5.2.2. designed with 2 main goals in mind - battery life and processing power

3. Advanced Android

3.1. Deployment to the market place

3.1.1. Creating the APK from eclipse

3.1.2. Signing up to android market place

3.1.3. 25$ signup fees

3.1.4. Upload apk and screenshots

3.1.5. Updating a new version of APK file

3.2. Best Practices

3.2.1. Memory consideration

3.2.2. Overall picture - follow KISS principle

3.2.3. Unit testing

3.3. Pulling data from external sources

3.3.1. Using net url to pull data

3.3.2. REST basics

3.4. What is possible

3.4.1. Action bar

3.4.2. Widget programming

3.4.3. Call log

4. BuildingBlocks

4.1. Passing values from one activity to another

4.1.1. Bundle

4.1.2. Intent

4.2. Email program

4.3. Accessing Camera

4.4. Menu

4.5. Preferences

4.5.1. What it is

4.5.1.1. Configuration settings for your app

4.5.1.2. data will be saved even if you exit the application.

4.6. Exploring the file system

4.7. Capturing back button event

4.8. Accessing a web page

4.9. SlidingDrawer

4.10. FAQ

4.11. Advanced Android

4.11.1. NDK

4.11.1.1. Getting started - Building an NDK project in eclipse

4.11.1.1.1. http://ndeiveehan.blogspot.in/2013/08/tesseract-is-open-source-ocr-engine.html

4.11.2. Augmented Reality

4.11.2.1. What is possible

4.11.3. Animation

4.11.3.1. Canvas basics

4.11.3.2. Multithreaded programming

4.11.4. Deployment to the market place

4.11.4.1. Creating the APK from eclipse

4.11.4.2. Signing up to android market place

4.11.4.3. 25$ signup fees

4.11.4.4. Upload apk and screenshots

4.11.4.5. Updating a new version of APK file

4.11.5. Best Practices

4.11.5.1. Memory consideration

4.11.5.2. Overall picture - follow KISS principle

4.11.6. Pulling data from external sources

4.11.6.1. Using net url to pull data

4.11.6.2. REST basics

5. Workshop

5.1. 1. Setting up environment

5.2. 2. Hello world

5.3. 3. A simple calculator example

5.4. 4. Passing data between activities

5.5. 5. Layouts

5.6. 6. AdvancedUIs

5.6.1. Scroll and Horizontal scroll view

5.7. 7. Menus

5.8. 8. Preferences

5.9. 9. Datastorage - Shared preferences

6. Android Data Storage

6.1. Shared Preferences

6.1.1. Overview

6.1.1.1. key value pairs of primitive datatypes

6.1.1.2. data will be persisted across user sessions

6.1.2. Steps

6.1.2.1. Save

6.1.2.2. Load

6.1.3. More code samples

6.2. Internal storage

6.2.1. Overview

6.2.1.1. stores on device's internal storage

6.2.1.2. private to your application by default

6.2.1.3. removed when the application is uninstalled

6.2.2. Steps

6.2.2.1. Save

6.2.2.2. Load

6.2.3. Other things you can do

6.3. External Storage

6.3.1. Overview

6.3.1.1. store data in external storage - can be removable or non-removable

6.3.1.2. world readable, can be modified by other apps

6.3.2. Steps

6.3.2.1. get Uses permission

6.3.3. Why

6.3.3.1. persistent and not removed at all, even uninstalled

6.4. SQLLite Databases

6.4.1. Features

6.4.1.1. Create databases

6.4.1.2. Accessible only within the application

6.4.2. CRUD

6.4.2.1. Create

6.5. Network connection

7. Android Core

7.1. Services

7.1.1. What it is

7.1.1.1. They run in the background, does not have UI

7.1.1.2. you might want to perform something regardless of what is on the screen

7.1.2. Life cycle

7.1.2.1. Starting

7.1.2.2. Running

7.1.2.3. Destroyed

7.1.3. How to write a Service

7.2. Intents

7.2.1. What is

7.2.1.1. are messages that are sent to major building blocks

7.2.2. Characteristics

7.2.2.1. Asynchronous

7.2.3. What can it do

7.2.3.1. Start a new activity

7.2.3.2. Start a service

7.2.3.3. Deliver a broadcast

7.2.4. Types

7.2.4.1. Explicit

7.2.4.2. Implicit

7.2.4.2.1. Sending an email

7.2.5. Sending information via an intent

7.3. Broadcast Receivers

7.3.1. What it is

7.3.1.1. Androids implementation of pub/sub model (Observer pattern)

7.3.2. Example

7.3.2.1. SMS arrives, call comes in, battery runs low, system gets booted - there can be a number of receivers could be triggered by them

7.4. Activity

7.4.1. What

7.4.2. How to write an activity

7.4.3. Life cycle

7.4.4. FAQ

7.5. Content providers

7.5.1. What it is

7.5.1.1. interfaces for sharing data between application

7.5.2. Example

7.5.2.1. Contact provider

7.5.2.2. Settings provider

7.5.2.3. Mediastore

7.5.3. How to write

7.5.4. FAQ

7.5.5. STeps