android - an brief introduction
TRANSCRIPT
-
7/27/2019 ANDROID - An Brief Introduction
1/41
-
7/27/2019 ANDROID - An Brief Introduction
2/41
A mobile operating system (OS) is a software that allows smart phones, tablet
PCs and other devices to run applications and programs.
Examples
Symbian OS
BlackBerry OS
Apples iOS
Windows Phone OS
Android OS
Mobile Operating System
Icons Of Some MOS
-
7/27/2019 ANDROID - An Brief Introduction
3/41
What is Android ?
-
7/27/2019 ANDROID - An Brief Introduction
4/41
INTRODUCTION
-
7/27/2019 ANDROID - An Brief Introduction
5/41
Open handset
Alliance
-
7/27/2019 ANDROID - An Brief Introduction
6/41
Android is part of the build abetter phone process
Open Handset Alliance produces Android
Comprises handset manufacturers,
software firms, mobile operators, andother manufactures and fundingcompanies
-
7/27/2019 ANDROID - An Brief Introduction
7/41
Android is growingUneven distribution of OS by regions
Does not include iTouch or iPad, as not smartphones
-
7/27/2019 ANDROID - An Brief Introduction
8/41
Android applications arecompiled to Dalvik bytecodeWrite app in Java
Compiled in Java
Transformed to Dalvik bytecode
Linux OS
Loaded into Dalvik VM
-
7/27/2019 ANDROID - An Brief Introduction
9/41
The Dalvik runtime is
optimised for mobileapplications.
Run multiple VMs efficiently
Each app has its own VM
Minimal memory footprint
-
7/27/2019 ANDROID - An Brief Introduction
10/41
Android has many components
-
7/27/2019 ANDROID - An Brief Introduction
11/41
Android has a working emulator
-
7/27/2019 ANDROID - An Brief Introduction
12/41
All applications are written in Javaand available to each other
Android designed to enable reuse ofcomponents in other applications
Each application can publish itscapabilities which other apps can use
-
7/27/2019 ANDROID - An Brief Introduction
13/41
Bruce Scharlau, University of Aberdeen, 2010
Android applications havecommon structure
Views such as
lists, grids, textboxes, buttons,and even anembeddable webbrowser
Content
Providers thatenableapplications toaccess data from
other applications(such asContacts), or toshare their owndata
A Resource Manager,providing access to non-code resources such aslocalized strings,graphics, and layout files
A Notification Managerthat enables all apps todisplay custom alerts in thestatus bar
An Activity Managerthatmanages the life cycle ofapplications and providesa common navigationbackstack
A d d l h
-
7/27/2019 ANDROID - An Brief Introduction
14/41
Android applications havecommon structure
Broadcast
receivers cantrigger intents thatstart an application
Data storage
provide data foryour apps, andcan be sharedbetween appsdatabase, file,
and sharedpreferences(hash map) usedby group ofapplications
Services run in thebackground and haveno UI for the userthey will update data,and trigger events
Intents specify whatspecific action should beperformed
Activity is the presentationlayer of your app: there willbe one per screen, and theViews provide the UI to theactivity
A d d l h
-
7/27/2019 ANDROID - An Brief Introduction
15/41
Android applications havecommon structure
Broadcast
receivers cantrigger intents thatstart an application
Data storage
provide data foryour apps, andcan be sharedbetween appsdatabase, file,
and sharedpreferences(hash map) usedby group ofapplications
Servicesrun in thebackground and have
no UI for the userthey will update data,and trigger events
Intents specify whatspecific action should beperformed
Activity is the presentationlayer of your app: there willbe one per screen, and theViews provide the UI to theactivity
-
7/27/2019 ANDROID - An Brief Introduction
16/41
Standard components formbuilding blocks for Android apps
Other applications
Has life-cycle
screen
App to handle content
Background appLike music player
Views
manifest
Activity
Intents
Service
Notifications
ContentProviders
-
7/27/2019 ANDROID - An Brief Introduction
17/41
Activity is one thing you can do
-
7/27/2019 ANDROID - An Brief Introduction
18/41
Services declared in the manifestand provide support
Services run in the background:
Music player providing the music playing inan audio application
Intensive background apps, might need tospawn their own thread so as to not blockthe application
-
7/27/2019 ANDROID - An Brief Introduction
19/41
Intent provides late runningbinding to other apps
It can be thought of as the glue betweenactivities. It is basically a passive data
structure holding an abstract description ofan action to be performed.
Written as action/data pairs such as:VIEW_ACTION/ACTION content://contacts/1
-
7/27/2019 ANDROID - An Brief Introduction
20/41
Notifications let you know ofbackground events
This way you know that an SMS arrived,or that your phone is ringing, and theMP3 player should pause
-
7/27/2019 ANDROID - An Brief Introduction
21/41
ContentProviders share data
You need one if your application shares datawith other applications
This way you can share the contact list with theIM application
If you dont need to share data, then you canuse SQLlite database
J
-
7/27/2019 ANDROID - An Brief Introduction
22/41
UI layouts are in Java and XML
setContentView(R.layout.hello_activity); //will load the XML UI file
-
7/27/2019 ANDROID - An Brief Introduction
23/41
Android, Inc. was founded in Palo Alto, California, UnitedStates in October, 2003 by Andy Rubin (co-founder ofDanger), Rich Miner (co-founder of Wildfire Communications,Inc.), Nick Sears (once VP at T-Mobile), and Chris White(headed design and interface development at WebTV) todevelop, in Rubin 'swords "...smarter mobile devices that aremore aware of its owner's location and preferences". Despitethe obvious past accomplishments of the founders and earlyemployees, Android Inc. operated secretly, revealing only thatit was working on software for mobile phones. That sameyear, Rubin ran out of money. Steve Perlman, a close friend of
Rubin, brought him $10,000 in cash in an envelope andrefused a stake in the company.
-
7/27/2019 ANDROID - An Brief Introduction
24/41
The Android Open Source Project (AOSP) is ledby Google, and is tasked with the maintenance anddevelopment of Android. According to the project "Thegoal of the Android Open Source Project is to create asuccessful real-world product that improves the mobile
experience for end-users." AOSP also maintains theAndroid Compatibility Program, defining an "Androidcompatible" device "as one that can run anyapplication written by third-party developers using the
Android SDK and NDK", to prevent incompatible
Android implementations. The compatibility program isalso optional and free of charge, with the CompatibilityTest Suite also free and open-source.
-
7/27/2019 ANDROID - An Brief Introduction
25/41
Android's user interface is based on direct manipulation,touchinputs that loosely correspond to real- world actions, likeswiping, tapping, pinching and reverse pinching to manipulateon-screen objects. The response to user input is designed tobe immediate and provides a fluid touch interface, often usingthe vibration capabilities of the device to provide hapticfeedback to the user. Internal hardware such asaccelerometers, gyroscopes and proximity sensors are usedby some applications to respond to additional user actions, forexample adjusting the screen from portrait to landscapedepending on how the device is oriented, or allowing the userto steer a vehicle in a racing game by rotating the device,simulating control of a steering wheel.
-
7/27/2019 ANDROID - An Brief Introduction
26/41
Android is developed in private by Google until the latestchanges and updates are ready to be released, at whichpoint the source code is made available publicly.Thissource code will only run without modification on select
devices, usually the Nexus series of devices.With manydevices, there are proprietary components which have tobe provided by the manufacturer, in order for Android towork
-
7/27/2019 ANDROID - An Brief Introduction
27/41
Android consists of a kernel based on Linux kernelversion 2.6 and, from Android 4.0 Ice Cream Sandwichonwards, version 3 .x, with middleware, libraries and
APIs written in C, and application software running onan application framework which includes Java-
compatible libraries based on Apache Harmony.Android uses the Dalvik virtual machine with just-in-time compilation to run Dalvik 'dex-code' (DalvikExecutable), which is usually translated from Javabytecode.The main hardware platform for Android is
the ARM architecture. There is support for x86 fromthe Android x86 project, and Google TV uses a specialx86 version of Android.
-
7/27/2019 ANDROID - An Brief Introduction
28/41
Since Android devices are usually battery-powered, Android isdesigned to manage memory (RAM) to keep powerconsumption at a minimum, in contrast to desktop operatingsystems which generally assume they are connected tounlimited mains electricity. When an Android app is no longerin use, the system will automatically suspend it in memory -while the app is still technically "open," suspended appsconsume no resources (e.g. battery power or processingpower) and sit idly in the background until needed again Thishas the dual benefit of increasing the general responsivenessof Android devices, since apps don't need to be closed andreopened from scratch each time, but also ensuringbackground apps don't waste power needlessly
-
7/27/2019 ANDROID - An Brief Introduction
29/41
Google provides major updates, incremental in nature, to Android every six tonine months, which most devices are capable of receiving over the air.[71] Thelatest major update is Android 4.2 Jelly Bean.
Compared to its chief rival mobile operating system, namely iOS, Androidupdates are typically slow to reach actual devices. For devices not under the
Nexus brand, updates often arrive months from the time the given version isofficially released. This is caused partly due to the extensive variation inhardware of Android devices, to which each update must be specificallytailored, as the official Google source code only runs on their flagship Nexusphone. Porting Android to specific hardware is a time- and resource-consumingprocess for device manufacturers, who prioritize their newest devices and often
leave older ones behind.[73] Hence, older smartphones are frequently notupdated if the manufacturer decides it is not worth their time, regardless ofwhether the phone is capable of running the update.
-
7/27/2019 ANDROID - An Brief Introduction
30/41
Android has an active community of developers andenthusiasts who use the Android source code to develop anddistribute their own modified versions of the operating systemThese community-developed releases often bring newfeatures and updates to devices faster than through theofficial manufacturer/carrier channels, albeit without asextensive testing or quality assurance;provide continuedsupport for older devices that no longer receive officialupdates; or bring Android to devices that were officiallyreleased running other operating systems, such as the HPTouchpad. Community releases often come pre-rooted andcontain modifications unsuitable for non-technical users, suchas the ability to overclock or over/undervolt the device'sprocessor. CyanogenMod is the most widely used communityfrmware, and acts as a foundation for numerous others.
-
7/27/2019 ANDROID - An Brief Introduction
31/41
Android applications run in a sandbox, an isolatedarea of the system that does not have access tothe rest of the system's resources, unless accesspermissions are explicitly granted by the user
when the application is installed.Before installing an application, the Play Storedisplays all required permissions: a game mayneed to enable vibration or save data to an SDcard, for example, but should not need to read
SMS messages or access the phonebook. Afterreviewing these permissions, the user can chooseto accept or refuse them, installing the applicationonly if they accept.
-
7/27/2019 ANDROID - An Brief Introduction
32/41
The source code for Android is available under free and opensource software licenses. Google publishes most of the code(including network and telephony stacks) under the ApacheLicense version 2.0, and the rest, Linux kernel changes,under the GNU General Public License version 2. The OpenHandset Alliance develops the changes to the Linux kernel, inpublic, with source code publicly available at all times. Therest of Android is developed in private by Google, with sourcecode released publicly when a new version is released.Typically Google collaborates with a hardware manufacturerto produce a 'flagship' device (part of the Google Nexusseries) featuring the new version of Android, then makes thesource code available after that device has been released.
-
7/27/2019 ANDROID - An Brief Introduction
33/41
-
7/27/2019 ANDROID - An Brief Introduction
34/41
Some Phonesusing
Android OS
Some TABSAlso Use
Android OS
GALAXYNOTE having
Android
-
7/27/2019 ANDROID - An Brief Introduction
35/41
Notifications In Android
-
7/27/2019 ANDROID - An Brief Introduction
36/41
Google Drive
-
7/27/2019 ANDROID - An Brief Introduction
37/41
Games
Many Games are there in theAndroid which can be
downloaded from App Store
-
7/27/2019 ANDROID - An Brief Introduction
38/41
Acknowledgements Wikipedia
Android Developers Website
Activity and Service life-cycle flow charts
Tons of other Android info
Google Maps API external library http://code.google.com/android/add-ons/google-apis/maps-overview.html
MightyPocket http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/
Numerous Forums & other developer sites, including: http://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.html
http://efreedom.com/Question/1-6070968/Google-Maps-Api-Directions http://www.mail-archive.com/[email protected]/msg28487.html
http://android.bigresource.com/ threads
http://groups.google.com/group/android-developers threads
Many http://stackoverflow.com threads
http://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.html
http://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://www.mail-archive.com/[email protected]/msg28487.htmlhttp://android.bigresource.com/http://groups.google.com/group/android-developershttp://stackoverflow.com/http://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.htmlhttp://stackoverflow.com/http://groups.google.com/group/android-developershttp://groups.google.com/group/android-developershttp://groups.google.com/group/android-developershttp://android.bigresource.com/http://www.mail-archive.com/[email protected]/msg28487.htmlhttp://www.mail-archive.com/[email protected]/msg28487.htmlhttp://www.mail-archive.com/[email protected]/msg28487.htmlhttp://www.mail-archive.com/[email protected]/msg28487.htmlhttp://www.mail-archive.com/[email protected]/msg28487.htmlhttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://efreedom.com/Question/1-6070968/Google-Maps-Api-Directionshttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.htmlhttp://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://www.mightypocket.com/2010/08/android-screenshots-screen-capture-screen-cast/http://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.htmlhttp://code.google.com/android/add-ons/google-apis/maps-overview.html -
7/27/2019 ANDROID - An Brief Introduction
39/41
An Important note to viewer
All information Is taken from internet and isnot verified by me
-
7/27/2019 ANDROID - An Brief Introduction
40/41
-
7/27/2019 ANDROID - An Brief Introduction
41/41
VERSION HISTORY OF ANDROID
Version history of Android.pptx
Click to go to next presentation
http://localhost/var/www/apps/conversion/tmp/scratch_1/Version%20history%20of%20Android.pptxhttp://localhost/var/www/apps/conversion/tmp/scratch_1/Version%20history%20of%20Android.pptx