@2015 dr faisal nafie1 android introduction world is contracting with the growth of mobile phone...

25
@2015 Dr Faisal Nafie 1 Android Introduction World is contracting with the growth of mobile phone technology. As the number of users is increasing day by day, facilities are also increasing. Starting with simple regular handsets which were used just for making phone calls, mobiles have changed our lives and have become part of it. Now they are not used just for making calls but they have innumerable uses and can be used as a Camera , Music player, Tablet PC, T.V. , Web browser etc . And with the new technologies, new software and operating systems are required.

Upload: allen-warren

Post on 18-Jan-2018

220 views

Category:

Documents


0 download

DESCRIPTION

Continue  Android is an open source and Linux- based Operating System for mobile devices such as smartphones and tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other companies. Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android. The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007 where as the first commercial version, Android 1.0, was released in September Mihail L. Sichitiu3

TRANSCRIPT

Page 1: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2015 Dr Faisal Nafie 1

Android Introduction World is contracting with the growth of mobile

phone technology. As the number of users is increasing day by day, facilities are also increasing. Starting with simple regular handsets which were used just for making phone calls, mobiles have changed our lives and have become part of it. Now they are not used just for making calls but they have innumerable uses and can be used as a Camera , Music player, Tablet PC, T.V. , Web browser etc . And with the new technologies, new software and operating systems are required.

Page 2: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 2

What is Android One of the most widely used mobile OS these

days is ANDROID. Android is a software bunch comprising not only operating system but also middleware and key applications. Android Inc was founded in Palo Alto of California, U.S. by Andy Rubin, Rich miner, Nick sears and Chris White in 2003. Later Android Inc. was acquired by Google in 2005. After original release there have been number of updates in the original version of Android

Page 3: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue Android is an open source and Linux-based Operating

System for mobile devices such as smartphones and tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other companies. Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android. The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007 where as the first commercial version, Android 1.0, was released in September 2008.

@2011 Mihail L. Sichitiu 3

Page 4: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue On June 27, 2012, at the Google I/O conference,

Google announced the next Android version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the primary aim of improving the user interface, both in terms of functionality and performance. The source code for Android is available under free and open source software licenses. Google publishes most of the code under the Apache License version 2.0 and the rest, Linux kernel changes, under the GNU General Public License version 2.

@2011 Mihail L. Sichitiu 4

Page 5: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 5

Continue

Page 6: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Features of Android Android is a powerful operating system

competing with Apple 4GS and supports great features. Few of them are listed below:

@2011 Mihail L. Sichitiu 6

Feature

Description

Beautiful UI

Android OS basic screen provides a beautiful and intuitive user interface

Connectivity

GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX.

Storage SQLite, a lightweight relational database, is used for data storage purposes.

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

Messaging

SMS and MMS

Page 7: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

ContinueFeature

Description

Web browser

Based on the open-source Web Kit layout engine, coupled with Chrome's V8 JavaScript engine supporting HTML5 and CSS3.

Multi-touch

Android has native support for multi-touch which was initially made available in handsets such as the HTC Hero

Multi-tasking

User can jump from one task to another and same time various application can run simultaneously.

Resizable widgets

Widgets are resizable, so users can expand them to show more content or shrink them to save space

@2011 Mihail L. Sichitiu 7

Page 8: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

ContinueFeature Description

Multi-Language Supports single direction and bi-directional text.

GCM Google Cloud Messaging (GCM) is a service that lets developers send short message data to their users on Android devices, without needing a proprietary sync solution.

Wi-Fi Direct A technology that lets apps discover and pair directly, over a high-bandwidth peer-to-peer connection

Android Beam A popular NFC-based technology that lets users instantly share, just by touching two NFC-enabled phones together.

@2011 Mihail L. Sichitiu 8

Page 9: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 9

Features & Specifications Android is a powerful Operating

System supporting a large number of applications in Smart Phones. These applications make life more comfortable and advanced for the users. Hardware's that support Android are mainly based on ARM architecture platform. Some of the current features and specifications of android are:

Page 10: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 10

Continue

Page 11: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 11

ContinueAndroid comes with an Android market which is an online software store. It was developed by Google. It allows Android users to select, and download applications developed by third party developers and use them. There are around 2.0 lack+ games, application and widgets available on the market for users.Android applications are written in java programming language. Android is available as open source for developers to develop applications which can be further used for selling in android market. There are around 200000 applications developed for android with over 3 billion+ downloads. Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. For software development, Android provides Android SDK (Software development kit). Read more about open source software.

Page 12: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 12

ApplicationsThese are the basics of Android applications:

   Android applications are composed of one or more application components (activities, services, content providers, and broadcast receivers)

   Each component performs a different role in the overall application behavior, and each one can be activated individually (even by other applications)

   The manifest file must declare all components in the application and should also declare all application requirements, such as the minimum version of Android required and any hardware configurations required

    Non-code application resources (images, strings, layout files, etc.) should include alternatives for different device configurations (such as different strings for different languages).

Page 13: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

@2011 Mihail L. Sichitiu 13

Continue Google, for software development and

application development, had launched two competitions ADC1 and ADC2(Android Developer Challenge) for the most innovative applications for Android. It offered prizes of USD 10 million combined in ADC1 and 2. ADC1 was launched in January 2008 and ADC 2 was launched in May 2009. These competitions helped Google a lot in making Android better, more user friendly, advanced and interactive.

Page 14: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

The Android Platform Android is an operating system and a software

platform upon which applications are developed. A core set of applications for everyday tasks, such as Web browsing and email, are included on Android handsets.

As a product of the Open Handset Alliance’s vision for a robust and open source development environment for wireless, Android is an emerging mobile development platform. The platform was designed for the sole purpose of encouraging a free and open market that all mobile applications phone users might want to have and software developers might want to develop.

@2011 Mihail L. Sichitiu 14

Page 15: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Android Platform Differences Android is hailed as “the first complete, open, and

free mobile platform.” Complete: The designers took a comprehensive

approach when they developed the Android platform. They began with a secure operating system and built robust software framework on top that allows for rich application development opportunities.

Open: The Android platform is provided through open source licensing. Developers have unprecedented access to the handset features when developing.

@2011 Mihail L. Sichitiu 15

Page 16: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue Open: The Android platform is provided

through open source licensing. Developers have unprecedented access to the handset features when developing applications.

Free: Android applications are free to develop. There are no licensing or royalty fees to develop on the platform. No required membership fees. No required testing fees. No required signing or certification fees. Android applications can be distributed and commercialized in a variety of ways.

@2011 Mihail L. Sichitiu 16

Page 17: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Android’s Underlying Architecture The Android platform is designed to be more

fault-tolerant than many of its predecessors. The handset runs a Linux operating system, upon which Android applications are executed in a secure fashion. Each Android application runs in its own virtual machine

(Figure 1).Android applications are managed code; therefore, they are much less likely to cause the phone to crash, leading to fewer instances of device corruption (also called "bricking” the phone, or rendering it useless).

@2011 Mihail L. Sichitiu 17

Page 18: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Diagram of the Android platform architecture

@2011 Mihail L. Sichitiu 18

Figure 1

Page 19: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

The Linux Operating System The Linux 2.6 kernel handles core system services and

acts as a hardware abstraction layer (HAL) between the physical hardware of the handset and the Android software stack.

Some of the core functions the kernel handles include: Enforcement of application permissions and security Low-level memory management Process management and threading The network stack Display, keypad input,camera,WiFi, Flash memory,

audio, and binder (IPC) driver access

@2011 Mihail L. Sichitiu 19

Page 20: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Android Application Runtime Environment Each Android application runs in a separate process, with

its own instance of the Dalvik virtual machine (VM). Based on the Java VM, the Dalvik design has been optimized for mobile devices. The Dalvik VM has a small memory footprint and multiple instances of the Dalvik VM can run concurrently on the handset. Dalvik is a process virtual machine (VM) in Google's Android operating system that executes applications written for Android

Security and Permissions: The integrity of the Android platform is

maintained through a variety of security measures.

@2011 Mihail L. Sichitiu 20

Page 21: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

ContinueApplications as Operating System Users

When an application is installed, the operating system creates a new user profile associated with the application. Each application runs as a different user, with its own private files on the file system, a user ID, and a secure operating environment. The application executes in its own process with its own instance of the Dalvik VM and under its own user ID on the operating system.

@2011 Mihail L. Sichitiu 21

Page 22: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue Explicitly Defined Application Permissions:

To access shared resources on the system, Android applications register for the specific privileges they require. Some of these privileges enable the application to use phone functionality to make calls, access the network, and control the camera and otherhardware sensors. Applications also require permission to access shared data containing private and personal information such as user preferences, user’s location, and contact information.Applications might also enforce their own permissions by

@2011 Mihail L. Sichitiu 22

Page 23: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continuedeclaring them for other applications to use. The application can declare any number of different permission types, such as read-only or read-write permissions, for finer control over the application.

Android Application Framework:The Android application framework provides everything necessary to implement your average application. The Android application lifecycle involves the following key components:

@2011 Mihail L. Sichitiu 23

Page 24: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue Activities are functions the application

performs. Groups of views define the application’s

layout. Intents inform the system about an

application’s plans. Services allow for background processing

without user interaction. Notifications alert the user when something

interesting happens.@2011 Mihail L. Sichitiu 24

Page 25: @2015 Dr Faisal Nafie1 Android Introduction  World is contracting with the growth of mobile phone technology. As the number of users is increasing day

Continue Mobile software development has evolved over time.

Android has emerged as a new mobile development platform, building on past successes and avoiding past failures of other platforms. Android was designed to empower the developer to write innovativeapplications. The platform is open source, with no up-front fees, and developers enjoy many benefits over other competing platforms. Now it’s time to dive deeper and start writing Android code, so you can evaluate what Android can do for you. In the next chapter, we configure the Android development environment and take a brief walk through the Android SDK.

@2011 Mihail L. Sichitiu 25