Android - It is a Linux-based operatingsystem designed primarily for touchscreen mobile devices such as smartphones and tablet computers. Initiallydeveloped byAndroid, Inc., which Google backedfinancially and later purchased in 2005.Android was unveiled in 2007 along withthe founding of the Open Handset Alliance:a consortiumof hardware, software, and telecommunication companies devoted to advancing openstandards for mobile devices. The firstAndroid-powered phone was sold inOctober 2008.
-Android is open source and Google releases thecode under the Apache License. This open sourcecode and permissive licensing allows thesoftware to be freely modified and distributed bydevice manufacturers, wireless carriers andenthusiast developers. Additionally, Android hasa large community of developers writingapplications ("apps") that extend thefunctionality of devices, written primarily in acustomized version of the Java programminglanguage. In October 2012, there wereapproximately 700,000 apps available forAndroid, and the estimated number ofapplications downloaded from GooglePlay, Androids primary app store, was 25 billion.
History of Android Android, Inc. was founded in PaloAlto, California in October 2003 by Andy Rubin (co-founder of Danger), Rich Miner (co-founder ofWildfire Communications, Inc.),Nick Sears (onceVP at T-Mobile), and Chris White (headed designand interface development at WebTV) todevelop, in Rubins words "smarter mobile devicesthat are more aware of its owners location andpreferences". Despite the past accomplishments ofthe founders and early employees, Android Inc.operated secretly, revealing only that it wasworking on software for mobile phones. That sameyear, Rubin ran out of money. Steve Perlman, aclose friend of Rubin, brought him $10,000 in cashin an envelope and refused a stake in the company.
Google acquired Android Inc. on August17, 2005, making it a wholly owned subsidiary ofGoogle. Key employees of Android Inc., includingRubin, Miner and White, stayed at the companyafter the acquisition. Not much was known aboutAndroid Inc. at the time, but many assumed thatGoogle was planning to enter the mobilephone market with this move. At Google, theteam led by Rubin developed a mobile deviceplatform powered by the Linux kernel. Googlemarketed the platform to handset makersand carriers on the promise of providing aflexible, upgradable system. Google had lined up aseries of hardware component and softwarepartners and signaled to carriers that it was opento various degrees of cooperation on their part.
On November 5, 2007, the Open HandsetAlliance, a consortium of technology companiesincluding Google, device manufacturers suchas HTC and Samsung, wireless carriers suchas Sprint Nextel and T-Mobile, and chipset makerssuch as Qualcomm and TexasInstruments, unveiled itself, with a goal todevelop open standards for mobile devices. Thatday, Android was unveiled as its first product, amobile device platform built on the Linuxkernel version 2.6.The first commercially availablephone to run Android was the HTCDream, released on October 22, 2008.
Since 2008, Android has seen numerous updates whichhave incrementally improved the operatingsystem, adding new features and fixing bugs in previousreleases. Each major release is named in alphabeticalorder after a dessert or sugary treat; forexample, version 1.5 Cupcake was followed by1.6 Donut. The latest release is 4.2 Jelly Bean. In2010, Google launched its Nexus series of devices—aline of smart phones and tablets running the Androidoperating system, and built by a manufacturer partner.HTC collaborated with Google to release the first Nexussmart phone, the Nexus One. The series has since beenupdated with newer devices, such as the Nexus 4 phoneand Nexus 10 tablet, made by LG andSamsung, respectively. Google releases the Nexusphones and tablets to act as their flagship Androiddevices, demonstrating Androids latest software andhardware features.
InterfaceAndroids user interface is based on directmanipulation, sing touch inputs that looselycorrespond to real-world actions, likeswiping, tapping, pinching and reverse pinching tomanipulate on-screen objects. The response touser input is designed to be immediate andprovides a fluid touch interface, often using thevibration capabilities of the device toprovide haptic feedback to the user. Internalhardware suchas accelerometers, gyroscopes and proximitysensors are used by some applications to respondto additional user actions, for example adjustingthe screen from portrait to landscape dependingon how the device is oriented, or allowing the userto steer a vehicle in a racing game by rotating thedevice, simulating control of a steering wheel.
Android devices boot to the home screen, the primarynavigation and information point on the device, whichis similar to the desktop found on PCs. Android homescreens are typically made up of app icons and widgets;app icons launch the associated app, whereas widgetsdisplay live, auto-updating content such as the weatherforecast, the users email inbox, or a news ticker directlyon the home screen. A home screen may be made up ofseveral pages that the user can swipe back and forthbetween, though Androids home screen interface isheavily customizable, allowing the user to adjust thelook and feel of the device to their tastes. Third partyapps available on Google Play and other app stores canextensively re-theme the home screen, and even mimicthe look of other operating systems, such as WindowsPhone. Most manufacturers, and some wirelesscarriers, customize the look and feel of their Androiddevices to differentiate themselves from thecompetition.
Present along the top of the screen is a statusbar, showing information about the device and itsconnectivity. This status bar can be "pulled" downto reveal a notification screen where apps displayimportant information or updates, such as a newlyreceived email or SMS text, in a way that doesntimmediately interrupt or inconvenience the user. Inearly versions of Android these notifications couldbe tapped to open the relevant app, but recentupdates have provided enhancedfunctionality, such as the ability to call a numberback directly from the missed call notificationwithout having to open the dialer app first.Notifications are persistent until read or dismissedby the user.
Applications Android has a growing selection of third partyapplications, which can be acquired by users either through anapp store such as Google Play or the Amazon Appstore, or bydownloading and installing the applications APK file from athird-party site. The Play Store application allows users tobrowse, download and update apps published by Google andthird-party developers, and is pre-installed on devices thatcomply with Googles compatibility requirements. The appfilters the list of available applications to those that arecompatible with the users device, and developers may restricttheir applications to particular carriers or countries for businessreasons. Purchases of unwanted applications can be refundedwithin 15 minutes of the time of download, and some carriersoffer direct carrier billing for Google Play applicationpurchases, where the cost of the application is added to theusers monthly bill. As of September 2012, there were morethan 675,000 apps available for Android, and the estimatednumber of applications downloaded from the Play Store was 25billion.
Applications are developed in the Java language usingthe Android software development kit (SDK). The SDKincludes a comprehensive set of developmenttools, including a debugger, software libraries, ahandset emulator basedon QEMU, documentation, sample code, and tutorials.The officially supported integrated developmentenvironment (IDE) is Eclipse using the AndroidDevelopment Tools (ADT) plug-in. Other developmenttools are available, including a Native DevelopmentKit for applications or extensions in C or C++, GoogleApp Inventor, a visual environment for noviceprogrammers, and various cross platform mobile webapplications frameworks. In order to work around limitations on reaching Googleservices due to Internet censorship in the PeoplesRepublic of China, Android devices sold in the PRC aregenerally customized to use state approved servicesinstead.
DevelopmentAndroid consists of a kernel based on Linuxkernel version 2.6 and, from Android 4.0 Ice CreamSandwich onwards, version3.x, withmiddleware, libraries and APIs writtenin 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(Dalvik Executable), which is usually translatedfrom Java byte code. The main hardware platformfor Android is the ARM architecture. There issupport for x86 from the Androidx86 project, and Google TV uses a special x86version of Android.
Memory ManagementSince Android devices are usually battery-powered, Android is designed to manage memory(RAM) to keep power consumption at aminimum, in contrast to desktop operatingsystems which generally assume they areconnected to unlimited mains electricity. When anAndroid app is no longer in use, the system willautomatically suspend it in memory - while the appis still technically "open," suspended apps consumeno resources (e.g. battery power or processingpower) and sit idly in the background until neededagain. This has the dual benefit of increasing thegeneral responsiveness of Android devices, sinceapps dont need to be closed and reopened fromscratch each time, but also ensuring backgroundapps dont waste power needlessly.
UpdatesGoogle provides majorupdates, incremental innature, to Android every six tonine months, which mostdevices are capable ofreceiving over the air. Thelatest major update is Android4.2 Jelly Bean.
Security and privacyAndroid applications run in a sandbox, an isolatedarea of the system that does not have access to therest of the systems resources, unless accesspermissions are explicitly granted by the userwhen the application is installed. Before installingan application, the Play Store displays all requiredpermissions: a game may need to enable vibrationor save data to an SD card, for example, but shouldnot need to read SMS messages or access thephonebook. After reviewing these permissions, theuser can choose to accept or refusethem, installing the application only if they accept.
The sandboxing and permissions system lessensthe impact of vulnerabilities and bugs inapplications, but developer confusion and limiteddocumentation has resulted in applicationsroutinely requesting unnecessarypermissions, reducing its effectiveness. Severalsecurity firms, such as Lookout MobileSecurity, AVG Technologies, and McAfee, havereleased antivirus software for Android devices.This software is ineffective as sandboxing alsoapplies to such applications, limiting their ability toscan the deeper system for threats.
Beyond Smartphone and tablets The open and customizable nature of Androidallows it to be used on otherelectronics, including laptops and net books, smartbooks smart TVs(Google TV) and cameras (NikonCoolpix S800c and Galaxy Camera). In addition, theAndroid operating system has seen applications onsmart glasses (ProjectGlass), wristwatches, headphones, car CD andDVD players, mirrors, portable media players andlandlines. Ouya, an upcoming videogames consolerunning Android, became one of the mostsuccessful Kickstarter campaigns, crowdfundingUS$8.5m for its development, and was later followedby other Android-based video games consolessuch as Project Shield from NVIDIA.
In 2011, Google demonstrated"Android@Home", a new home automatontechnology which uses Android to control a rangeof household devices including lightswitches, power sockets andthermostats. Prototype light bulbs wereannounced that could be controlled from anAndroid phone or tablet, but Android head AndyRubin was cautious to note that "turning a lightbulb on and off is nothing new," pointing tonumerous failed home automation services.Google, he said, was thinking more ambitiouslyand the intention was to use their position asa cloud services provider to bring Google productsinto customers homes.
Respectfullysubmitted to Prof.Erwin M. Globio, MSIT