Mobile Application Development in Java Curriculum
From AITI Wiki
Contents |
Course Description
AITI's Mobile Application Development Course will teach students to develop real-world mobile applications targeted to the African market.
Topics include:
- Intermediate Java concepts (classes, objects, inheritance, in terfaces)
- Mobile Technologies (SMS, MMS, GPRS, 3G, M-PESA)
- J2ME Programming
- SMS Applications
- Server-side Technologies (databases, SMS libraries, etc.)
- Emergent Mobile Technologies using J2ME (orientation awareness, location awareness, multimedia)
In addition to the mobile application programming technical curriculum, the course seeks to build entrepreneurial skills by incorporating guest lecturers with expertise in the Kenyan technology market, mobile challenges, a group mobile application project, and a business plan competition.
The program also has a vibrant web community for the students and instructors. This community will allow the participants to post or answer questions, evaluate the class, search and post job openings, search for course materials, and so on.
The Java Programming Language
Lectures
- Lecture 00: Course Introduction (pdf, ppt)
- Lecture 01: Introduction to Java (pdf, ppt)
- Lecture 02: Variables and Operators in Java (pdf, ppt)
- Lecture 03: Control Structures (pdf, ppt)
- Lecture 04: Arrays (pdf, ppt)
- Lecture 05: Methods (pdf, ppt)
- Lecture 06: Classes and Objects (pdf, ppt)
- Lecture 07: Encapsulation and References (pdf, ppt)
- Lecture 08: Static Fields and Methods (pdf, ppt)
- Lecture 09: Inheritance (pdf, ppt)
- Lecture 10: Interfaces (pdf, ppt)
- Lecture 11: Generics (pdf, ppt)
- Lecture 12: Exceptions (pdf, ppt)
Labs
- Lab 01: Skills Assessment
- Lab 02: Variables and Operators
- Lab 02: Provided Files (only necessary for Challenge Problems)
- Lab 03: Control Structures
- Lab 04: Arrays
- Lab 05: Loops
- Lab 06: Methods
- Lab 07: Arrays, Methods, Classes and Objects
- Lab 08: Encapsulation and Static
- Lab 09: Inheritance
- Lab 10: Intro to SMSLib
Links
SMS Applications
Lectures
- Lecture 13: SMS Applications (pdf, ppt)
- Lecture 14: HTTP Information Pull: HTML & XML (pdf, ppt)
- Lecture 15: SQL and JavaDB (pdf, ppt)
- Lecture 16: Regular Expressions (pdf, ppt)
Labs
Project
Library and Example Code
- SendGmail: Sending email from Java via Gmail
- SendGmail.java
- JavaMail 1.4.2: mail.jar
- JavaBeans Activation Framework 1.1.1: activation.jar
- AITI SMSLib and Emulator
- AITI SMS Installation Instructions
- AITI SMSLib Library: aiti-sms.jar
- SMS Application Driver: org.aiti.sms.Main.java
- Sample Inbound Message Handler: org.aiti.sms.SimpleApp.java
- SMSLib Library Files: smslib_files.zip
- Sample SMS Sender (send message from Main): org.aiti.sms.SenderExample.java
Java 2 Micro Edition (J2ME)
Lectures
- Lecture 17: Local Mobile Applications Overview (pdf, ppt)
- Lecture 18: Introduction to J2ME (pdf, ppt)
- Lecture 19: J2ME UI Elements (pdf, ppt)
Mini-Lectures
- J2ME Mini-Lecture: Bluetooth (pdf, ppt)
- J2ME Mini-Lecture: File Connection (SD-Cards) (pdf, ppt)
- J2ME Mini-Lecture: Location Awareness (pdf, ppt)
- J2ME Mini-Lecture: Messaging (SMS) (pdf, ppt)
- J2ME Mini-Lecture: Persistant Storage (mobile storage) (pdf, ppt)
- J2ME Mini-Lecture: Connections (HTTP Internet Connections) (pdf, ppt)
- J2ME Mini-Lecture: Mobile Media API (camera, video, and media files) (pdf, ppt)
Labs
Sample Code
Links
Entrepreneurship
Lectures
- Lecture 01: Entrepreneurship Overview (pdf, ppt)
- Lecture 02: Entrepreneurship in Kenya (pdf, ppt)
- Lecture 03: Cases Studies and Business Plans (pdf, ppt)
Guest Lectures
- Richard Bell Guest Lecture (ppt)

