Unit I PDF

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

UNIT-1

Mobile Application
Development
M.A. Zahed Javeed
Lect. In computer
Government Polytechnic Jinutr
Objectives
After learning this unit student can able to:
• Explain basic terms related to Android OS
• Explain android architecture for the given application
• Identify tools and software's required for developing android application
with justification
• Explain significance of given component in android architecture
Introduction to android
• Android is an open source Linux-based operating system intended for mobile computing platforms.
• It is a software stack for mobile operating system.
• Android is under development by Google and Open-Handset Alliance.
• Android programming is based on Java programming language so if you have basic understanding on
Java programming then it will be a fun to learn Android application development
Foundation of Android
• Founded by Andy Rubin in year 2003.
• Google acquired Android ,Inc. – August 2005.
• The open handset alliance, a group of several companies was formed – 5th November 2007.
• Android Beta SDK Released – 12th November 2007.
Versions
• Android is released in series of Versions. Starting from 1.0 version ( where 2.0, 3.0, …… are latest releases )
.
• Google name these versions with some food items like ice cream, jelly bean, sandwich etc. which is one
of the specialty of android versions.
Why Android

Android provides a rich application framework that allows us to build innovative apps and games for
mobile devices in a Java language environment.
Features of Android
Sr.No. Feature & Description

1 Beautiful UI
Android OS basic screen provides a beautiful and intuitive user interface.
2 Connectivity
GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX.
3 Storage
SQLite, a lightweight relational database, is used for data storage purposes.
4 Media support
H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF,
and BMP.
5 Messaging
SMS and MMS
6 Web browser
Based on the open-source WebKit layout engine, coupled with Chrome's V8 JavaScript engine supporting
HTML5 and CSS3.
7 Multi-touch
Android has native support for multi-touch which was initially made available in handsets such as the HTC Hero.
8 Multi-tasking
User can jump from one task to another and same time various application can run simultaneously.
9 Resizable widgets
Widgets are resizable, so users can expand them to show more content or shrink them to save space.
10 Multi-Language
Pros & Cons
Advantages:
1. Multitasking
2. Easy of Notifications
3. Easy access to thousands of applications via the Google Android Android App Market
4. Can install a modified ROM
5. Widget
6. Voice typing and actions
7. Support VGA,2D & 3D.
• Disadvantages:
1. Continuous Internet connection
2. Advertising
Android - Environment Setup
• You will be glad to know that you can start your Android application
development on either of the following operating systems −
Microsoft Windows XP or later version.
Mac OS X 10.5.8 or later version with Intel chip.
Linux including GNU C Library 2.7 or later.
• All the required tools to develop Android applications are freely available
and can be downloaded from the Web. Following is the list of software's
you will need before you start your Android application programming.
Java JDK5 or later version (https://www.oracle.com/in/java/technologies/
javase/javase-jdk8-downloads.html)
Android Studio (https://developer.android.com/studio)
• If you are running Windows and installed the JDK in C:
\jdk1.8.0_102, you would have to put the following line in your C:
\autoexec.bat file.

set PATH=C:\jdk1.8.0_102\bin;%PATH%
set JAVA_HOME=C:\jdk1.8.0_102
• Alternatively, you could also right-click on My Computer, select
Properties, then Advanced, then Environment Variables. Then,
you would update the PATH value and press the OK button.
Android Architecture
Android Architecture
• Application: Android will ship with a set of core applications including an email client,
SMS program, calendar, maps, browser, contacts, and others. All applications are written
using the Java programming language.
• Application Framework: The application framework provides the classes used to
create Android applications. It also provides a generic abstraction for hardware access
and manages the user interface and application resources
• Libraries: While Android development is done in Java, Dalvik is not a Java VM. The core
Android libraries provide most of the functionality available in the core Java libraries as
well as the Android-specific libraries.
• Android Runtime: Android includes a set of core libraries that provides most of the
functionality available in the core libraries of the Java programming language. Every
Android application runs in its own process, with its own instance of the Dalvik virtual
machine. Dalvik has been written so that a device can run multiple VMs efficiently..
• Linux Kernel: Android relies on Linux version 2.6 for core system services such as
security, memory management, process management, network stack, and driver model.
The kernel also acts as an abstraction layer between the hardware and the rest of the
software stack.
Android - Application Components
• Application components are the essential building blocks of an Android
application. These components are loosely coupled by the application
manifest file AndroidManifest.xml that describes each component of the
application and how they interact.
• There are following four main components that can be used within an
Android application −
Sr.No Components & Description

Activities
1 They dictate the UI and handle the user interaction to the smart phone screen.
public class MainActivity extends Activity { }
Services
2 They handle background processing associated with an application.
public class MyService extends Service { }
Broadcast Receivers
They handle communication between Android OS and applications.
3
public class MyReceiver extends BroadcastReceiver { public void onReceive(context,intent){} }

Content Providers
4 They handle data and database management issues.
public class MyContentProvider extends ContentProvider { public void onCreate(){} }
Thanking You!!!

You might also like