1.ITU 08104 Module

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

ITU 08104

Mobile Applications Development

Dr. Angela Runyoro


Description of Module
Number of Credits 12

Sub enabling outcomes:

• Describe various technologies required to be used in mobile application


development
• Implement GUI controls and listeners to develop mobile applications
• Describe mobile application programming and deployment options, IDE
and tools.

Prerequisite Module: None

Learning Context: This Module will be conducted through


lectures, tutorial works, group discussions, case
studies

Learning Materials: Lecture Notes, Text Books, Case Studies,


the World Wide Web (internet)
Description of Module…
Integrated Method of Assessment:
• Students will be assessed through continuous assessments (Coursework) that
comprise of two compulsory tests, three compulsory assignments and finally,
end of Semester Examination. Continuous assessment carries 40% (Forty
marks) and a final examination at the end of semester carries 60% (Sixty
marks).

References:
• Lee, Wei-Meng (2013), Android Application Development Cookbook, John
Wiley & Sons; ISBN: 1118177673

• Fling, Brian (2009), Mobile Design and Development: Practical concepts and
techniques for creating mobile sites and web apps, O'Reilly Media; ISBN:
0596155441

• McWherter, Jeff and Scott Gowell (2012), Professional Mobile Application
Development, John Wiley & Sons; ISBN: 1118203909

• Meier, Reto (2012), Professional Android 4 Application Development,John
Wiley &Sons;ISBN: 1118102274
Introduction
• Mobile Application Development
– is the set of processes and procedures involved in
writing applications for small, wireless computing devices such
as smart phones or tablets.

• The created applications run on mobile platforms (mobile


operating system).
– Apple’s mobile operating system is called iOS,
– Google’s mobile platform is Android,
– Windows mobile platform is Windows Mobile.

• Each platform has its own rules, regulations, and


requirements to make a mobile application.
– For instance iOS mobile apps require the use of Objective C,
whereas Android mobile applications use Java…..What does Ms
Windows use???
Android
• Android is a mobile operating system that is
based on a modified version of Linux.

• In 2005, as part of its strategy to enter the mobile


space, Google purchased Android and took over
its development work (as well as its development
team).

• Most of the Android code was released under the


open source Apache License, which means that
anyone who wants to use Android can do so by
downloading the full Android source code.
Android…
• Android has gone through quite a number of
updates since its first release.
• List down various versions of Android and their
codenames……….
Architecture of Android
• The Android OS is roughly divided into five sections in four main layers:
Android Devices
• Android devices come in all shapes and sizes.
As of late November 2011, the Android OS
powers the following types of devices:
➤ Smart phones ➤ Tablets
➤ E-reader devices ➤ Net books
➤ MP4 players ➤ Internet TVs
Required tools
• For Android development, you can use a Mac, a
Windows PC, or a Linux machine.
• All the tools needed are free and can be
downloaded from the Web.
• The tools:
– Java JDK5 or JDK6
– Android SDK
– Eclipse IDE for Java Developers
– Android Development Tools (ADT) Eclipse Plug-in
(optional)
Java (JDK)
• The Android SDK makes use of the Java SE
Development Kit (JDK).

• Java SE can be downloaded from


www.oracle.com/technetwork/java/javase/down
loads/index.html (Note: Oracle registration is
needed)

• Java™ Platform, Standard Edition Development


Kit (JDK™) is used for building applications, and
components using the Java programming
language.
Android SDK
• The Android SDK contains a debugger, libraries,
an emulator, documentation, sample code, and
tutorials.

• Android SDK can be downloaded from


http://developer.android.com/sdk/index.html

• The Android SDK is packaged in a zip file. Unzip


its content (the android-sdk-windows folder)
into a folder, e.g. C:\Android 4.0\.
Eclipse
• Eclipse is the recommended Integrated
Development environment (IDE) for developing
Android applications.

• It is a multi-language software development


environment featuring an extensible plug-in
system.

• Eclipse IDE for Java can be downloaded from


(www.eclipse.org/downloads/).
Android Application
• An Android application (app) is a single
installable unit which can be started and used
independently.

• An Android application consists of configuration


files, Java source and resource files
Components of Android Application
Component Description

Application An Android application can have one Application class which is instantiated before any other
Android component. It is the last component which is stopped during application shutdown.

If not explicitly defined, Android creates a default application object for your application.

Activity An activity is the visual representation of an Android application. An Android application can have
several activities.

Activities use views and fragments to create their user interface and to interact with the user.

Service A service performs tasks without providing an user interface. They can communicate with other
Android components and send notifications to the user. For example, a broadcast receiver can
notify the user via the notification framework in Android.

Broadcast receiver (short: A receiver can be registered to listen to system messages and intents. A receiver gets notified by
receiver) the Android system if the specified event occurs.

For example, you can register a receiver for the event that the Android system finished the boot
process. Or you can register for the event that the state of the phone changes, e.g., someone is
calling.

Content provider (short: A provider defines a structured interface to application data. A provider can be used for accessing
provider) data within one application, but can also be used to share data with other applications.

Android contains an SQLite database which is frequently used in conjunction with a content
provider. The SQLite database would store the data, which would be accessed via the provider.

You might also like