Android Revolution In Mobile Technology Computer Science Essay
Androids mobile operating system is based on the Linux kernel and it is a software stack for mobile devices. This operating system is one of the worlds best-selling Smartphone platform. Android involves many developers writing applications that helps in extended the functionality of the devices. There are currently over 1,50,000 applications available for Android. Android Market is the online application store run by Google, though applications can also be downloaded from third-party sites. Developers write in the Java language.
The unveiling of the Android distribution on 5 November 2007 was announced with the founding of the Open Handset Alliance, a consortium of 80 hardware, software, and telecom companies devoted to advancing open standards for mobile devices. Most of the Android code is released by Google under the Apache License.
The Android open-source software stack consists of Java applications running on a Java-based, object-oriented applicationlication framework on top of Java core libraries . Libraries written in C include SQLite relational database management system, WebKit layout engine, SGL graphics engine, SSL. The Android operating system, including the Linux kernel, consists of roughly 12 million lines of code including 3 million lines of XML, 2.8 million lines of C, 2.1 million lines of Java, and 1.75 million lines of C++.
http://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Android_robot.svg/220px-Android_robot.svg.png
Android logo
Ascender Corporation designed the Android logo with the Droid font family.
Version history
After original release, many updates of androids have been seen. These updates focus on fixing bugs as well as adding new features. Each new version is developed under a code name based on a dessert item.
The most recent released versions of Android are:
2.0/2.1 (Eclair), which revamped the user interface and introduced HTML5 and Exchange ActiveSync 2.5 support
2.2 (Froyo), which introduced speed improvements with JIT optimization , Wi-Fi and Adobe Flash support
2.3 (Gingerbread), which refined the user interface, improved the soft keyboard and copy/paste features, and added support for Near Field Communication
3.0 (Honeycomb), a tablet-oriented release which supports larger screen devices and introduces many new user interface features, and supports multicore processors and hardware acceleration for graphics.
The upcoming version of Android is:
Ice Cream Sandwich, a combination of Gingerbread and Honeycomb into a “cohesive whole,” with a possible release in mid-2011.
Architecture
http://www.krazytech.com/wp-content/uploads/14.jpg
Architecture Diagram
Hardware Running Android
The main supported platform for Android is the ARM (Advanced Risc Machines) architecture.ARM is one of the most licensed and thus widespread processor cores in the world. It is used especially in portable devices due to low power consumption and reasonable performance. Now a days cell phones, note books and tablets, including the Dell Streak, Samsung Galaxy Tab, TV and other devices can use the functionality of Android . HTC Dream was the first phone to run android, released on 22 October 2008.
Features
Current features and specifications:
Application framework enabling reuse and replacement of application components.
Bluetooth, edge, 3G , WiFi support.
Camera GPS, accelerometer support.
GSM telephony support.
Integrated browser based on the open source webkit engine
Media support for common audio video, still image formats.
Android applications: Top 25 applications in the list below.
Googgle voice
Advanced task killer
Drop box
Evernote
Droid Analytics
Documents to go
Amazon kindle
Places directory
Tripit
Seesmic
FCC Speedtest
Astro File Manager
Got To Do
Gist
TED Mobile
Pandora
Shazam
Dial Zero
Google Goggles
Google Skymap
Tricodor
Fxcamera
Photoshop Mobile
Bump
Barcode Scanner
Screen Shot:
http://i.techrepublic.com.com/gallery/450062-500-416.jpg
Libraries
Android includes a set of C/C++ libraries used by various components of the Android system. These capabilities are exposed to developers through the Android applicationlication framework. Some of the core libraries are listed below:
System C library – a BSD-derived implementation of the standard C system library , tuned for embedded Linux-based devices
Media Libraries – based on PacketVideo’s OpenCORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG
Surface Manager – manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications
LibWebCore – a modern web browser engine which powers both the Android browser and an embeddable web view
SGL – the underlying 2D graphics engine
3D libraries – an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software.
FreeType – bitmap and vector font rendering
SQLite – a powerful and lightweight relational database engine available to all applications
Applicationlication Fundamentals
Android applications are written in the Java programming language. The Android SDK tools compile the code-along with any data and resource files-into an Android package, an archive file with an .apk suffix. All the code in a single .apk file is considered to be one application and is the file that Android-powered devices use to install the application.
Once installed on a device, each Android application. lives in its own security sandbox:
The Android operating system is a multi-user Linux system in which each application is a different user.
By default, the system assigns each application a unique Linux user ID (the ID is used only by the system and is unknown to the application). The system sets permissions for all the files in an application so that only the user ID assigned to that application can access them.
Each process has its own virtual machine (VM), so an application’s code runs in isolation from other applications.
By default, every application runs in its own Linux process. Android starts the process when any of the application’s components need to be executed, then shuts down the process when it’s no longer needed or when the system must recover memory for other applications.
In this way, the Android system implements the principle of least privilege. That is, each application, by default, has access only to the components that it requires to do its work and no more. This creates a very secure environment in which an application cannot access parts of the system for which it is not given permission.
However, there are ways for an application to share data with other applications and for an application to access system services:
It’s possible to arrange for two applications to share the same Linux user ID, in which case they are able to access each other’s files. To conserve system resources, applications with the same user ID can also arrange to run in the same Linux process and share the same VM (the applications must also be signed with the same certificate).
An application can request permission to access device data such as the user’s contacts, SMS messages, the mountable storage (SD card), camera, Bluetooth, and more. All application permissions must be granted by the user at install time.
Software Development Kit
The Android software development kit (SDK) includes a set of development tools viz. a debugger, libraries, a handset emulator (based on QEMU), documentation, sample code, and tutorials. Android developer website helps in downloading SDK. Currently supported development platforms include computers running Linux (any modern desktop Linux distribution), Mac OS X 10.4.9 or later, Windows XP or later. Instead of using Eclipse (official IDE) developers may use any text editor to edit Java and XML to create, build and debug Android applications.
The SDK also supports older versions of the Android platform in case developers wish to target their applications at older devices.
Android applications are packaged in .apk format and stored under /data/application folder on the Android OS. APK package contains .dex files ,resource files, etc.
List of those features that android phones do better than the iPhone
Browsing
Desktop
Connectivity
PC Connection
Multi-notification
Endless personalization
Market
Goggle integration
Open source
Op[en to carriers
Android Market
Android devices are available online in android Market which is developed by Google . “Market” works as an application program which is preinstalled on most Android devices and allows users to browse and download applications .As of December 2010 there were about 200,000 games, applications and widgets available on the Android Market, with an estimated 2.5 billion total downloads.
In April 2011, Google claims that there have been over 3 billion Android applications installed and downloads of Android applications surge by 50 percent from Q4 2010.
The Android Market was made fully accessible on the web, allowing users to browse and pick up applications using their PCs, send them to their mobile phone and make comments on them. All this functionality was previously accessible only from mobile phone devices.
Security
In March 2011, Google pulled 58 malicious applications from the Android Market which contained Trojans hidden in pirated versions of legitimate applications.
The malware (called DroidDream) exploited a bug which was present in versions of Android older than 2.2.2.
AVG and Symantec Security firms have released antivirus software for Android devices.
In August 2010, an SMS Trojan called Trojan-SMS in Android, according to security firm Kaspersky Lab.
Android users were advised not to use the Android web browser until Google issues a security patch.
Market Share
Research company Canalys estimated in 2009 that android had a 2.8% share of world widesmart phone shipments. By 2010 this had grown to 33% of the market, becoming the top selling smart phone platform.
In Feb 2010 Com Score said the android platform had 9% of the US smart phone market, as measured by current mobile subscribers. At the end of 2010 Android’s US Market share had grown to 21.4 percent.
Current Distribution
The following pie chart and table is based on the number of Android devices that have accessed Android Market within a 14-day period ending on the data collection date noted below.
http://chart.apis.google.com/chart?&cht=p&chs=460×250&chd=t:3.9,6.3,31.4,57.6,0.8&chl=Android%201.5|Android%201.6|Android%202.1|Android%202.2|Android%202.3&chco=c4df9b,6fad0c
Platform
API Level
Distribution
Android 1.5
3
3.9%
Android 1.6
4
6.3%
Android 2.1
7
31.4%
Android 2.2
8
57.6%
Android 2.3
9
0.8%
Data collected during two weeks ending on February 2, 2011
Order Now