As the Android Technology grows and new API's ... - iPAC TRAINING

joyfulfightΚινητά – Ασύρματες Τεχνολογίες

10 Δεκ 2013 (πριν από 3 χρόνια και 8 μήνες)

87 εμφανίσεις

As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training


















As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



Module 1


Section 1:


Introduction to
Computer
Programming




1
.0

1.1 Introduction to Computer Programming



1.2
Introduction to Java Programming





2
.0

2.1

Introduction to Java Applications

2.2

Installing Eclipse on Windows

2.3

Installing Eclipse on Mac

2.4

Introduction to Class and Objects





3
.0

3.1

Control Statements Part 1

3.2

Control Statements Part 2

3.3

Arrays




4
.0

4.1

Methods

4.2

A Deeper Look at Methods

4.3

A Deeper Look at Classes and Objects




5
.0

5.1

Object
-
Oriented Programming Inheritance

5.2

Object
-
Oriented Programming Polymorphism

5.3

Introduction to Graphical User Interfaces (GUIs) and Event Handling











As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training


SECTION
2



Introduction to Android Application Development





6.
0

What is Android?


6.1 Android Operating System


6.2 Google Play (Android
Market)



7.0
Basic Android User Interface Components


7.1 Activity

7.2 Fragments

7.3 View and View

Groups

7.4 Activities, Fragments and Views

8.0 Other Android Components



8.1 Intents



8.2 Services

8.3 Content Providers

8.4 Broadcast Receiver



9.0

Introduction to Android Application Development

9.1.1

Android Application Architecture

9.1.1

Android Project Structure

9.1.2

The Manifest file

9.1.3

Introduction to Activities

9.1.4

Activities

9.1.5

Resources

9.1.6

Managing Resources

9.1.7

Permissions

9.1.8


As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



10.0 Layout




10.1 Frame

Layout

10.2 Linear

Layout


10.3 Relative

Layout

10.4 Grid

Layout

10.5 Scroll

View




11.0

11.1

The User Interface Controls

Programming:

11.2
Button Controls

11.3
Text

11.4
List

Views and Performance

11.5
Custom List

11.6
Spinners

11.7
Layout

11.8
Date Pickers

11.9
Transitions



12.0
Contextual action mode for List

Views


13.0
Implementing undo for an action






As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training





14.0

Fragments


14.1

Fragments Overview

14.2

When to use Fragments

14.3

How to work with Fragments

14.4

Defining Fragments

14.5

Adding Fragments to Layout Files

14.6

Fragments
Lifecycle

14.7

Application Communication with Fragments

14.8

Animations of Fragment transitions

14.9

Adding Fragments to the back

stack



























As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



15.0

Developing Applications for Multiple Screen sizes





16.0
Introduction to the Action

Bar




16.1 Search

an action

in the Action

Bar

16.2
Reacting to action selection

16.3
Changing the menu



16.4
Customizing the Action

Bar


16.4.1
Adjusting the Action

Bar


16.4.2
Dimming the Android default navigation Buttons


16.4.3
Action

Bar for Tablets and
Phones



As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training




17.0

Applying Themes and Customization

17.1

Android Design Page

17.2

Styles

17.3

Attributes

17.4

Icons

17.5

Menus

17.6

Option Menu

17.7

Context Menu

17.8

Creating pop
-
up alert

17.9

The progress bar


18.0
Android Dialogs


18.1
Progress

Dialog


18.2 Own Dialog

18.3
Alert Dialog


As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



19.0
Working with Media

19.1 Audio

19.2 Video

19.3 Camera



20.0

Android Activity Life Cycle and Thread


21.0

Setting user Preferences and Data storage

21.1

Saving user settings (Shared preference API)

21.2

Database and Data Model

21.3

SQLITE Database and Content Provider

21.3.1
rawQuery()

21.3.2
query()



As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training




Recommended books:



Beginning Android™ Application Development by Wei
-
Meng Lee.


Wei
-
Meng Lee
is a technologist and founder of Developer Learning Solutions
(
www.learn2develop.net
), a technology company specializing in hands
-
on training on the latest
mobile technologies. Wei
-
Meng has many years of training experience, and his training courses
place special emphasis on the learning by
-
doing approach. This hands
-
on approach to learning
programming makes understanding the subject much easier than reading books, tutorials, and
documentation.

The book tactically explains the basics of Android Application development and is a very good
starting point for anyone who is

new to the Android Platform. Wei
-
Meng is also the author of
Beginning iOS 4 Application Development
(Wrox)









As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training




Part 2


Advanced Android Application Development


Prerequisites:
K
nowledge in Java ( SE
, no ME or EE required ) programming or
knowledge in any OOP (Object Oriented Programming) language and a
very
goo
d
knowledge in Android and Google API’s
.



SECTION 1

Android Home screen
Widgets

2. Android Widgets

2.1. Overview about AppWidgets

2.2.
Steps to create a Widget

2.3. Widget size

3. Creating the Broadcast receiver for the widget

3.1. Create and configure widget

3.2. Available views and layouts

3.3. AppWidget

Provider

4. Widget updates

7. Enabling a Widget for the Lock Screen

8.
Practice
:
Update widget via a service

9.
Practice
: Add widget to lockscreen


As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



S
ECTION 2

Android Animations

1. Android Animations

1.1. Overview

1.2. Animator and Animator

Listener

1.3. View

Property

Animator

1.4. Layout animations

1.5. Animations for
Activity transition

3.
Practice
: View Animation

4. Animations for Fragment transition

As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training


SECTION 3

Android Service Practice

1. Android Services

1.1. Service

1.2. Android Platform Service

1.3. Defining new services

2. Defining services

2.1. Declaring own
services

2.2. Running a Services in its own process

2.3. When to run a service in a separate process?

2.4. Intent Services

3. Broadcast receiver

4. Starting services

4.1. Start a service

4.2. Stopping a service









As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



SECTION 4

Android Broadcast

Receiver

1.

Broadcast receiver

1.1. Definition

1.2. Implementation

1.3. Unregister dynamically registered receiver

1.4. Long running operations

1.5. Restrictions for defining Broadcast

Receiver

1.6. Sticky Broadcast Intents

2. Defining custom events and receivers

2.1. Registering Broadcast receiver for custom events

2.2. Sending Broadcast Intents

3. System broadcasts

4. Automatically starting Services from a Receivers

5. Pending Intent

6.
Practice
: Broadcast Receiver

7.
Practice
: System Services and Broadcast

Receiver










As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training


SECTION 5

Android Notifications

2. Notification Manager

2.1. Notification Manager

2.2. Setting up Notifications

2.3. Canceling Notifications

3. Pending Intent

As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training

As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



SECTION 6

Android Location API and Google Maps


1.1.

Android Location
API

1.2.

Changing the Google View

1.3.

Android emulator and Google Maps

1.4.

Install Google Play services

1.5.

Getting the Google Map key

1.6.

Overview

1.7.

Creating the SHA
-
1 for your signature key

1.8.

Register with the Google APIs Console

1.9.

Create key for your application

1.10.

Android Location
API Basics





As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training



2.

Android Location API

2.1.

Determine the current geolocation

2.2.

Location Manager

2.3.

Location Provider

2.4.

Selecting Location Provider via Criteria

2.5.

Proximity Alert

2.6.

Forward and reverse Geocoding

2.7.

Security

2.8.

Prompt the user to Enabled GPS


3.

Using GPS and setting the
current location

3.1.

Activating GPS on the emulator

3.2.

Setting the geo position













As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training
















As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training












Module 2



Android Game Development


Prerequisites: Good kno
wledge in Java SE programing (No

ME or EE required),
Although android games can be developed using C++ with the NDK (Native
Development Kit), we would be using Java solely for this course module. However, we
would incorporate a set of OpenGL ES libraries wrapped in Java later in the cour
se



NB: As of the advent of Jellybean (Android 4.1) in 2012, the android SDK and ADT were
bundled together and as such we might skip some installation steps. However, we would still
update the SDK manager to install older APIS and other tools in order to
make sure we create
games that would work on both new and older devices.


1.

Creating simple android apps including a drawing application, music player,
accelerometer driven app etc. to grasp a good understanding of what android offers and to
know the Nitty
-
G
ritty API details needed for android games development.


2.

Understanding the components and structure of a game


3.

Designing an android game using the MVC

(Model View Controller) design pattern


4.

Developing an android game framework


5.

Developing your first 2D
surface view android game

(hurdles) by implementing the
android game framework


As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training

6.

Incorporating and implementing some of the gaming concepts learnt earlier including
collision detection and basic artificial intelligence, audio (music and sound), File
input/o
utput, user input handling in “hurdles”.


7.

A gentle introduction to OpenGL ES


8.

Learning 2D OpenGL ES programming tricks

9.

Developing your first OpenGL ES 2D game “Bad Attitude”

10.

Going 3D with OpenGL ES

11.

Developing your first OpenGL ES 3D game “Things Fall
Apart”

12.

Best practices for your games

13.

Publishing your games

14.

Monetizing your games


Recommended books:


Beginning android games 2
nd

Edition
-

By Mario Zechner

Mario is an expert in this field. Not only is he a good programmer but also a good teacher.
Besi
des writing, he also organizes workshops across Europe where he teaches gaming
development. Contributing to the open source community, he invented libgdx, an open
-
source
game development framework that allows developers to develop games across multiple
pla
tforms including android, windows, Mac Os, and currently IOS.


Other books not recommend but might be useful:


1.

Pro Android Games


By Vladimir Silva

This book is not recommend because it doesn’t teach you android games development but rather
how to po
rt C
games like Space Blaster, C
lassic Asteroids
, D
oom and Wolfenstein 3D to
Android
.


2.

Beginning Android Tablet Games Programming


By Jeremy Kerfs

The introduction of this book is perfect, however as you go down the path, you realize the author
fails to expla
in in
-
depth whatever he is doing. He mostly teaches you how to copy and paste. If
you are a copy and paste programmer, then this book is definitely yours. May I remind you that
there are a lot of bugs in the book’s related applications’ source codes. Also
, two of the games
don’t run.





As the Android Technology grows and new API’s are added occasionally, the course content may change
to

suit certain new
specifications
|
|

©

iPAC Training