Published using Google Docs
2013_11_android_pro
Updated automatically every 5 minutes

Android Java Applications (November 2013)

This course focuses on software applications development for the android platform using the Java programming language. This course includes 140 academic hours organized in four parts. The course was developed for people with background in software development. The course doesn’t assume any previous knowledge in OOP. The training material is organized in online courses available through the elearning platform we use during the course. If you are a bit confused and not sure whether this course is for you or maybe you should take the HTML5 Cross Platform Mobile applications course it is highly recommended that you watch the Android Jump Start video clip. This video clip overviews today approaches in software applications development for mobile telephones in general and focuses on the android platform.


Programming in Java (First Part)
This part covers all topics we must be familiar with when writing code in Java for the Android platform. We focus on OOP and especially the use of Inner Classes. During this part we also start with a short warm up for the Android platform and start writing our first simple applications. (30 academic hours)

Fundamental Topics (Second Part)

This part focuses on the main components each android application is composed of, including activities, services, broadcast receivers and content providers. The pace in beginning of this part is a bit slower comparing with the next parts of the course in order to allow the students getting the required solid understanding in the Java programming language. (85 academic hours)

Advance Topics (Third Part)

This part covers advanced topics their understanding is based on a solid understanding for the android application components and the android platform in general. (20 academic hours)

Analysis & Design using UML (Fourth Part)

This part covers the usage of UML, SysML and SoaML in the process of applications development for the android platform. We go over the available diagrams and their notation and we do it by going through practical examples in the context of the android platform. (5 academic hours)

Meeting

Date

Topic

Online Course (http://abelski.lifemichael.com)

Comments

1

6/11/2013

Procedural Programming

Developing Java SE Applications
Let’s Start
The Basic

1. towards next meeting please read the texts and watch the video clips in javabook.co.il following topics:
יסודות השפה
מחלקות ואובייקטים

2. towards next meeting please watch the following video clip in phpbook.co.il:
http://www.phpbook.co.il/wordpress/?p=144

3. towards next meeting pls complete the following assignments:
a. Simple Computation
b. Multiplication Table Exercise
c. Factorial Exercise
d. Fibonacci Exercise
e. Even Numbers

2

13/11/2013

Object Oriented Programming

Developing Java SE Applications
Introduction to OOP
Object Oriented Programming (excluding static members)

1. towards next meeting please watch the video clips in topic
מערכים ומחרוזות תווים

at www.javabook.co.il 

2. towards next meeting please complete the following assignmetns:
a. Rectangle Exercise
b. Person Exercise
c. Student Exercise
d. Course Exercise
e. Bank Account

3

20/11/2013

Arrays & Strings

Developing Java SE Applications
Arrays & Strings
Object Oriented Programming (excluding static members)

1. please get ready towards next meeting by watching the video clips at www.javabook.co.il in the following topic:
הורשה וממשקים

2. in arrays and strings topic pls complete the following assignments:
Simple Numbers Loop
Simple Sorting Exercise
Train Exercise

Book Author Exercise

Student Course Exercise

3. towards next meeting please practice the development of a simple hello world application for android. u can find video clips that explain this topic at
www.androidbook.co.il 

4

4/12/2013

Inheritance

Developing Java SE Applications
Inheritance

1. towards next meeting make sure you watch all video clips about מחלקות פנימיות and טיפול בשגיאות  at www.javabook.co.il.

2. pls complete in inheritance topic the following assignments:
shapes exercise
printable interface exercise
sport car exercise
romantic date
motorcycle
calorie sorting exercise

5

11/12/2013

Inner Classes


Exceptions

Developing Java SE Applications
Inner Classes

Developing Java SE Applications
Exceptions Handling

1. towards next meeting pls watch the following video clips in hebrew at www.javabook.co.il:
a. the first 2 video clips  in ‘קלט פלט
b. the first 2 video clips in תיכנות מקבילי
c. the first video clip in מחלקה גנרית
d. all video clips in מבני נתונים

2. pls complete following assignemnts in abelski website:
inner classes:
a. fly box exercise
b. human mind exercise
exceptions:
a. divide by zero exception
b. array size exception

18/12/2013

Threads


I/O Streams


Generics


Collections

Developing Java SE Applications
Threads

Developing Java SE Applications
I/O Streams

Java SE Generics Introduction
Introduction

Java SE Collections Framework
Introduction

1. pls develop a simple hello world application for android.

2. pls watch in ממשק משתמש topic at
www.androidbook.co.il the first three video clips.

3. pls go over the introduction slides scheduled for next meeting.

4. assignments you should submit towards next meeting:

a.please complete all assignments (levels 1,2 only) at
http://www.abelski.com/moodle/course/view.php?id=67 in topics ‘introduction’, ‘list’, ‘set’ and ‘map’ (excluding the ‘Month EnumSet Assignment’).

b. please complete the following assignments in topic’threads’ at http://www.abelski.com/moodle/course/view.php?id=3:
+ Left Right Threads
+ Bonga Kaponga Threads

c. please complete the following assignments in topics ‘i/o streams’ at
http://www.abelski.com/moodle/course/view.php?id=3:
+ Reverse Order Copy

7

25/12/2013

Activities

Android Fundamentals
Introduction (except the ‘Android Tasks’ topic)

1. towards next meeting please watch all video clips about resources in our online abelski course.

2. towards next meeting please complete the following assignments:
a. simple calculator
b. simple lotto numbers

3. towards next meeting please learn how to use LogCat. pls use the video at
http://www.youtube.com/watch?v=wPaUxCrp6qI 

8

1/1/2014

Resources

Android Fundamentals
Resources

1. towards next meeting please watch the video clips that explain the intent topic in www.androidbook.co.il and the relevant video clips in abelski.

2. towards next meeting please complete the following assignments:
a. listactivity countries
b. simple icon
c. assets files

9

8/1/2014

Intents

on 15/1/2014 we won’t have a meeting

Android Fundamentals
The Intent Concept
SharedPrefereces

1. towards next meeting please come ready with questions and list of topics for which u need clarification… topics in java… topics in android.

2. please complete the following assignments in intent topic:
a. favorite links
b. mambo sms

3. please improve the lotto numbers application and add a simple setting activity. u will need to use sharedpreference.

15/1/2014

10

22/1/2014

User Interface

on 29/1/2014 we won’t have a meeting

Android Fundamentals
User Interface Controls
Introduction (‘Android Tasks’)

Please complete the following assignments in the User Interface Controls topic:
a. Auto Complete Country
b. Languages Multi Auto Complete

c. Basic Calculator Image Buttons
d. Main Menu Activity List

29/1/2014

11

5/2/2014

User Interface

Android Fundamentals
Layout Managers

1. towards next meeting please complete following assignments:
a. Simple Photos Gallery

b. Simple Working Calculator

2. pls get ready for next meeting going over the menus & dialogs topic.

12

12/2/2014

User Interface

Android Fundamentals
Menus & Dialogs

1. please complete all assignments in the menus & dialogs topic covered in class.

2. towards next meeting please watch the video clip about activity life cycle
http://www.youtube.com/watch?v=510bmOrwvmU u can find an hebrew version at http://androidbook.co.il/wordpress/?p=81 

13

19/2/2014

Life Cycle

Android Fundamentals
Activity Life Cycle
Device Rotation
Localization
Basic Graphics
Debugging

1. please complete the lotto numbers tiny project phases 1 and 2.

2. please complete the flash light tiny project phase 1.

3. please complete the two simple assignments in ‘basic graphics’ topic.

14

26/2/2014

Fundamental Topics

Android Fundamentals
Customized Views
Development Tools
Dalvik VM
Adapters
SqliteDatebase

1. please go over the rest of the slides of sqlitedatabase and come ready with questions for next meeting.

2. in the ongoing project (passwords project) please start working on phase #2.

15

5/3/2014

User Interface

Android Fundamentals
SharedPrefereces
OpenGL Graphics
Content Provider (how to use content provider)

1. in the lotto numbers tiny project please complete phase #4.

2. towards next meeting please go over the slides about developing a new content provider and start working on the on going project (passwords application) phase #2.

3. towards next meeting threads topic please go over the threads topic using the following video:

http://javabook.co.il/wp/?p=108 
http://javabook.co.il/wp/?p=111 
pls also go over the slides themselves.


4. towards next meeting web services topic pls watch the video clip at:

http://www.lifemichael.com/en/2012/07/xml-dom-parsing-in-java-pro/ 

16

12/3/2014

Web Services
Threads

Android Fundamentals
Android Threads
Web Services
Files

1. please complete the currency exchange rates tiny project phase #3.

2. get ready for the content provider development topic.

17

19/3/2014

Database
Security
Memory
Services

Android Fundamentals
Android Services (local services)
Content Provider (how to develop a content provider)
Graphics Animation
Java Language

1. towards next meeting please watch the video clip that explains the remote services topic at http://androidbook.co.il/wordpress/2012/12/%D7%A4%D7%99%D7%AA%D7%95%D7%97-android-remote-service/.

2. currency exchange rates phase #4

18

26/3/2014

Content Providers

Android Fundamentals
Web View
Android Services (remote services)

1. please complete the Tel Aviv Tourist Guide.

2. complete the currency exchange rate remote service assignment in ‘android services’ topic.

19

2/4/2014

Broadcast Receivers
Telephony

Android Fundamentals
Broadcast Receivers

Telephony
SMS Messages
Media Framework
Touch Screen

Android Security Model
Memory Management

1. please complete the SMS to Voice application tiny project.

20

9/4/2014

Camera
User Interface

Android Fundamentals
Activity Data

Camera

Sensors
Speech Input  
Text to Speech

1, please complete phases 1 and 2 in the ‘list of sensors’ tiny project.

2. please complete phases 1 and 2 in the ‘light sensor’ tiny project.  

21

23/4/2014

User Interface

Android Fundamentals
Live Wallpapers
Vibration
Styles

App Widgets Development
Introduction
Basic App Widget
Configuration Activity
Design Guidelines

1. please complete the flash light tiny project phase 2.  

2. please complete DaVinci live wallpaper tiny project (all phases).  

3. please complete phase #5 in the currency exchange rate application tiny project.

22

30/4/2014

User Interface

Android  Unified UI
Activity Fragments
User Interface Widgets
Action Bar
User Notifications
Drag & Drop

1. please complete phase3 in the ‘list of sensors’ tiny project.  

2. moving forward with the passwords ongoing project and completing it.

23

7/5/2014

WiFi
Search
Networking

Android Fundamentals
Android Search
WiFi Connectivity
Networking

1. please complete the corporate chat tiny project. (till phase 3)

24

14/5/2014

Analytics



Google TV



Google Analytics for Android
Introduction
Jump Start

Google TV Basics
Introduction
Google TV Features
Android Platform Features
User Interface

Android Fundamentals
Location Based Services  *
Bluetooth (part 1)

* you can find detailed information for using google maps javascript sdk v3 at
http://www.abelski.com/moodle/course/view.php?id=170 

1. please choose one of your applications (prefer an application that was placed on google play) and implement the usage of google analytics.

2. Please develop a simple application for android platform that displays a map using  google maps javascript v3 library.

3. please complete the first three assignments in bluetooth topic.

25

21/5/2014

inApp Billing



Bluetooth

JUnit

Google inApp Billing Basics
Introduction
Jump Start

Android Fundamentals
Bluetooth


The JUnit Framework
Introduction
Eclipse and JUnit

1. please complete the assignments in the topics covered in class.

26

28/5/2014

Testing



Robotium



NFC

Instrumentation Framework
Introduction
Jump Start

Robotium Basics
Introduction
Jump Start

Near Field Communication
Introduction
Jump Start
Manifest File
Intent Dispatching System

1. please complete the assignments in the topics covered in class.

27

11/6/2014

Renderscript



Google Cloud Messaging


Input Method Framework

Rendering Basics
Introduction
Jump Start  

Google Cloud Messaging Basics
Introduction
Jump Start

Input Method Framework Basics
Introduction
Jump Start

1. please complete the assignments in the topics covered in class.

 28

WiFi Direct





Loaders



Applications Analysis & Design

WiFi Direct Basics
Introduction

Broadcast Receiver

Application

Android Fundamentals

Loaders


UML 2.X Fundamentals
Introduction
General Guidelines
Basic Elements
Use Case Diagram
Class Diagram
Activity Diagram
Deployment Diagram
Package Diagram
Object Diagram
UML Tools

SysML Fundamentals
Introduction
System Modeling
Requirements Diagrams

SoaML Fundamentals
Introduction
Notation

-

November 6th, 2013

The Loader sub-topic was added to the Android User Interface topic.