Android : Revolutionizing Mobile Devices


Published on

  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Android : Revolutionizing Mobile Devices

  1. 1. Android: Revolutionizing Mobile Devices Mr. Ritesh R. Puthran Ms. Aarti A. Patil Associate Consultant, Lecturer, Cybercom Datamatics Information Solutions (CDIS) Shree L.R.Tiwari College of Engineering aarti.patil21@gmail.comAbstract - In this time of immense globalization the need for their Android Phone. And then in January 2010 Googlecollaborative tools and devices are the bear necessity of life. We launched its first phone the Nexus One. The Nexus One isfeel the need to be connected to the people we know both branded as the Google phone but is manufactured by thepersonal and professional, get information on the go. Mobiledevices is no more a mere medium of communication, it Taiwanese company HTC which also made the first Androidincorporates technologies like GPS, Touch Screen, phone.Accelerometer, etc. The Google’s Android OS takes all thesethings into consideration and hence been so famous among the III. ANDROID’S MARKET SHAREmasses ever since its launch. In this paper we will review Following are some of the reports showing Android’sAndroid as a platform, what’s so different of Android compared current market share and predictions on future. The Q1 2010to existing mobile OS in market, its current market share and Insights by Nielsen shows that Android has a 9% hold oversome of the predictions on its future market share. We will then the market which is 2% higher than the previous quarter. Alsogo through the architecture of Android as a Mobile deviceplatform, and look at the steps to setup Android Application the market share of Windows mobile and RIM Blackberry hasDevelopment environment on a machine and develop a simple dipped by 2%.Hello World Application using Android SDK. I.INTRODUCTION Android is an open source software stack for mobiledevices which includes Operating System, Core Libraries,Middleware, Application Framework & some collection ofApplications developed by Google. Android’s base is a Linuxkernel which provides low level interface with the hardware,memory management, process control, and security. It alsoprovides a collection of open source libraries for applicationdevelopment, including SQLite, WebKit, OpenGL, and aMedia Manager. Android’s runtime which is used to host andexecute Android’s application consists of Dalvik VirtualMachine and core libraries which provide android specificfunctionalities. Android also provides an applicationframework which exposes the system services to theapplication layer. Android comes with some preinstalledapplications such as contact, home, phone application. Andfinally there is software development kit which includes tools,device emulators, eclipse plug-ins, and documentation. II. HISTORY TO ANDROID It all started with the acquisition of Android Inc. by Google Fig. 1 Platform wise Market Share holding Q1 2010in the year 2005.Android Inc was a small company based inPalo Alto. Then in the year 2007 Google along with 50 other Some of the 2012 predictions made by Gartner show anhandset manufacturers and mobile operators formed the Open immense growth in the Android Market share.Handset Alliance (OHA). OHA was formed with the vision toprovide open source technologies in the field of mobile Predictions show that by the end of 4th quarter of 2012devices. Along with the launch of OHA Google released the Android would have 14.5% market share. Android will befirst version of Android’s SDK. The first phone to be surely the fastest growing Mobile OS by then and would havelaunched with Android was the T-Mobile G1 and is also surpassed iPhone OS by then in terms of both market shareknown as the HTC Dream or the Google G1 dev-phone. In the and number of units sold.year 2009 other Handset manufacturers from the OHA likeSamsung, Sony Ericsson, HTC, LG, and Motorola launched
  2. 2. V. ANDROID ARCHITECTURE Fig. 3 Android Architecture Diagram A. Linux Kernel : Android makes use of Linux 2.6 kernel to provide core Fig. 2 Platform wise market share predictions system services such as hardware drivers, process control, memory management, security, network stack. The kernel also acts as the abstraction layer between the hardware and the rest IV.WHAT’S DIFFERENT OF ANDROID? of the software stack.A. Customers Perspective : B. Android Runtime: From a customer’s perspective he will get a much Android’s Runtime includes some core libraries and cheaper smart phone compared to existing smart Dalvik Virtual Machine. The Android’s runtime gives the phones developed using proprietary OS. More Active android like functionalities to the entire software stack. Developer Community means larger collection of i) Core Libraries: Applications to choose from Android Market. Android includes a set of core libraries thatB. Developers Perspective: provides most of the functionality available in the First Mobile OS which is Open in full sense. core libraries of the Java programming language plus Android doesn’t differentiate between its core some additional libraries specific to Android. applications and the third party applications. No ii) Dalvik Virtual Machine (DVM): Review Process to sell third party Application’s in the market. Unlike the Apple Store, the Android market doesn’t have a review process to check for third party applications before they can be sold in the Android market. Third party companies and application developers are free to develop and sell their applications on the Android Market. Android allows you to access the core mobile device functionality such as making a phone call and sending SMS using standard API calls. The SDK provided by Google has all a developer needs to build and run an Android application. From Device Emulator’s to eclipse plug-ins and many more tools are provided in the kit. Fig. 4 .java to .dex conversion flow chart DVM is a java interpreter machine, completely optimized for android platform and which is designed to run on low end memory mobile devices. Every Android application runs in its own process, with its
  3. 3. own instance of the Dalvik virtual machine. Dalvik front ends and functionality extensions, or otherwise build on has been written so that a device can run multiple them. VMs efficiently. The Dalvik VM executes files in the The following application services are the architectural Dalvik Executable (.dex) format which is optimized cornerstones of all Android applications, providing the for minimal memory footprint. The VM is register- framework you’ll be using for your own software: based, and runs classes compiled by a Java language compiler that have been transformed into the .dex 1. Activity Manager: format by the included "dx" tool. Controls the life cycle of your Activities, including management of the Activity stack. The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low- 2. Views: level memory management. Used to construct the user interfaces for your Activities. C. Libraries: 3. Notification Manager: Running on top of the Linux kernel are a set of C/C++ Provides a consistent and nonintrusive mechanism forcore libraries which are used by various components of the signaling your users.Android system. These libraries are exposed to theapplications with set of Android Application Framework. 4. Content Providers:Some of the libraries are: Let your applications share data. i. A media library for playback of audio and video 5. Resource Manager: media. ii. A surface manager to provide display Supports non-code resources like strings and graphics to management. be externalized. iii. Graphics libraries that include OpenGL and SGL for 2D and 3D graphics. VII. DEVELOPING FIRST ANDROID APPLICATION iv. SQLite for Relational Database support. We will now guide you through the steps to configure a v. WebKit for web browser. development environment on your machine and develop a basic hello world application in it. Android supports D. Application Framework: application development on Windows, Linux, & Mac OS. But By providing an open development platform, Android for scope of this paper we will only consider that theoffers developers the ability to build extremely rich and development environment machine is running on windows XPinnovative applications. Developers are free to take or above.advantage of the device hardware, access locationinformation, run background services, set alarms, add 1. Installing Prerequisites :notifications to the status bar, and much, much more. i. Java: All Android applications are developedDevelopers have full access to the same framework APIs using Java as a programming language. So the machineused by the core applications. Some of the Application on which we are developing must have java installed inframeworks are Views, Content Providers, Resource it. Install Java SDK 5 or above. You can download javaManagers, Notification Manager, and Activity Manager. from ii. Android SDK: The Android SDK has the entire E. Applications: package of emulators, debugging tools, device manager All Application’s, both native and third party are built and many more things. The Android SDK is free to useon this application layer using the API libraries. The and to distribute. You can download the SDK fromapplication layer run within the Android’s runtime, using the and services made available from the applicationframework. Android comes pre-shipped with some basic iii. Eclipse IDE (optional): Using Integratedapplications such as email client, contact, phone, home Development Environment makes the work ofscreen, and Gmail client which are all developed in java. developing software very simple and fast. Google Provide Android Development Tools (ADT) plug-ins VI. ANDROID’S APPLICATION ARCHITECTURE for eclipse IDE. We will make use of those to develop Android’s architecture encourages the concept of our hello world application. There are many variationscomponent reuse, enabling you to publish and share of these IDE available; Eclipse 3.4 or 3.5 (Galileo) isActivities, Services, and data with other applications, with preferred for Android. You can download Eclipse IDEaccess managed by the security restrictions you put in place. from same mechanism that lets you produce a replacement iv. Installing Plug-in into Eclipse (optional): Nowcontact manager or phone dialer can let you expose your once the eclipse is installed. We will now install theapplication components to let other developers create new UI
  4. 4. ADT into eclipse. Start your eclipse software, select run. Run the SDK and AVD manager application. Select help and then install new software. Windows will pop- Virtual devices. Create a new device. Give a device name. up requesting for a URL to be provided to download Select appropriate target version of your choice. Enter the plug-in from. Add https://dl- some memory limit to your virtual device. Select the under the Work with screen type of your device. Once all done click on the section in the window. Select all from the list which is create AVD button. This will create a virtual device for generated to be installed and press next. You will see a you which you can use to run your applications on. window for license agreement, agree to the license and carry on with the installation. If you get and warnings pop-up in between the installation ignore it and press ok button to it. Fig. 7 Creating AVD window 3. Creating a Android Project By default on creating a simple Android Project in Eclipse the hello Android is implemented implicitly. So we just have to create a proper Android project on our Fig. 5 Eclipse window for installing plug-in Eclipse IDE and our Hello Android will be ready to run. Once the installation is done eclipse will prompt you to Select File then new and then Project, select Android restart. Once Restarted select Windows and then Project. A window pops-up requesting you to enter the preferences, now a window will pop-up which shows project details. some list on left side. Select Android. To the right side of this window you will have a text field stating the SDK location. Browse through the location to your Androids SDK. List of all available Android SDK will be listed select one click on the apply button and then Ok button. This completes your setting up of the eclipse IDE with Android SDK. Fig. 6 Eclipse window for adding android preferences 2. Creating Android Virtual Device (AVD)Now as all the setup is done the last thing you need to do isto create a Virtual device on which your application will Fig. 8 Creating Android Project
  5. 5. 1. Project Name: in this case HelloAndroid2. Content : check create a new project in workspace3. Build Target: select SDK version of your choice. Note that you need to have AVD of that version or advanced version created.4. Application Name: This is the name that comes up on the device.5. Package Name: a package structure for your application code.6. Create Activity: check on this box and give a Java classified name. This will be the name of the activity Java file.7. Min SDK Version: this is the API Level of the target you have checked. Once all these details are filled just click finish and your first Android application is ready to run. Right click on the project folder select run as & then Android Application. This must initiate AVD and you must be able to see a Hello Android Displayed on your AVD screen. VIII.CONCLUSION We have reviewed Android from the market share,Android as a Mobile Platform, and from applicationdevelopment perspective. And in all the areas which arereviewed Android proves its point way ahead of all itscompetitors. But there are still some areas where Androidis lagging a bit, like the data synchronization with PC,document processing. REFERENCES[1] Reto Meier, Professional Android 2 Application Development, 2010[2] PETER GRUNDSTRÖM, Mobile Development for iPhone and Android, Available: agement/2010/grundstrom_peter_K10054.pdf, 2010[3] Dot Com Infoway - Position Paper, Android by 2012 A study on present and future of Googles Android[4](2011)The Android Developer Guide. [Online].Available: