Android
Android is a collection of software intended for mobile device include operating systems, middleware and key applications. Android Standard Development Kid (SDK) provides equipment and Application Programming Interface (API)
needed to develop the Android platform aplikasi on Java programming language.in other way,Android is a Linux-based operating system for mobile phones such as smart phones and tablet computers. Android provides an open platform for developers to create their own applications for use by a variety of mobile devices.
History of Android
On July 2000, Google Inc. in a cooperation with Android., A company which located in Palo Alto, California. The founders of Android Inc. working at Google, including Andy Rubin, Rich Miner, Nick Sears, and Chris White.
Around September 2007 a study reported that Google filed a patent application of a cell phone (Google finally introduced the Nexus One, one of the GSM smart phone that uses Android operating system. This mobile phone manufactured by HTC Corporation and available on the market on January 5, 2010) .
The first phones using the Android operating system is the HTC Dream, was released on October 22, 2008. At the end of 2009 is estimated at least in this world there are 18 types of mobile phones that use Android.
The Development of Android
version 1.1
On March 9, 2009, Google released the Android version 1.1. Android version was equipped with an aesthetic update to the application, alarm clock, voice search (voice search), sending messages to Gmail, and email notifications.
Android version 1.5 (Cupcake)
In mid-May 2009, Google released a mobile phone using Android and the SDK (Software Development Kit) with version 1.5 (Cupcake). There are several updates including the addition of several features in this mobile version of the ability to record and watch videos with the camera mode, upload to Youtube videos and pictures to Picasa directly from the phone, A2DP Bluetooth support, the ability to automatically connect to a Bluetooth headset, animated scenes, and on-screen keyboard that can be adapted to the system.
Android version 1.6 (Donut)
Donut (version 1.6) was released in September by displaying the search process better than ever, the use of a battery indicator and control applet VPN.
Android version 2.0/2.1 (Eclair)
On December 3, 2009 re-launched Android phones with version 2.0/2.1 (Eclair), changes were made to the hardware optimization, improved Google Maps 3.1.2, UI changes with a new browser and support for HTML5, the new list of contacts, support flash for the camera 3.2 MP, digital zoom, and Bluetooth 2.1.
Android version 2.2 (Froyo: Frozen Yogurt)
On May 20, 2010, Android version 2.2 (Froyo) was launched. General changes to previous versions include support for Adobe Flash 10.1, speed performance and application of 2 to 5 times faster, integration V8 JavaScript engine used by Google Chrome to speed up the rendering capabilities of the browser.
Android version 2.3 (Gingerbread)
On December 6, 2010, Android version 2.3 (Gingerbread) was launched. General changes obtained from the Android version include increased ability of the game (gaming), improved copy paste function, the display interface (User Interface) redesigned, support for video formats VP8 and WebM, new audio effects and more support for the camera than one.
Android version 3.0/3.1 (Honeycomb)
Android Honeycomb is designed specifically for the tablet PC. this version supports larger screen sizes so it makes android users so much happier,. User Interface on Honeycomb is also different because it was designed for the tablet. Honeycomb also supports multiple processors and hardware acceleration (hardware) for graphics. The first tablet is made by running the Motorola Xoom Honeycomb.
Android version 4.0 (ICS: Ice Cream Sandwich)
Announced on October 19, 2011, Honeycomb to bring smartphone features and adding new features including unlocks with face recognition, data network usage monitoring and control, integrated social networking contacts, photographic enhancements, search for emails offline, and share information using NFC .
Android anatomy
The Android operating system package consisting of several elements, the simple architecture of Android is a Linux and a set of libraries of a kernel C / C ++ that provides a framework and manage the flow of the application process.
Linux Kernel
Android was build on Linux kernel 2.6. But overall Android is not a linux, because Android is not contained in the standard package which has own by other linux . Linux kernel provides a driver screen, camera, keypad, WiFi, Flash Memory, audio, and IPC (InterprocessCommunication) to manage applications and security holes.
Libraries
Android uses a library package found in C / C ++ with the standard Berkeley Software Distribution (BSD) is only half its originals to be embedded in the Linux kernel.
Some libraries are:
a.Media Library to play and record various video formats audiodan.
b.Surface Manager to set permissions from the application layer.
c.Graphic Library including SGL and OpenGL, for 2D and 3D visual,,
d.SQLite database to manage relationships that are used in applications.
e.SSL and Webkit to browser and internet security.
Android Runtime
Android Runtime is a virtual machine that makes the application more resilient Android with existing literature packet. In Android Runtime, there are 2 main parts, including:
- The core library, Android was developed through the Java programming language, but Android Runtime is not a Java virtual machine. Android core libraries provide nearly all of the functions contained in the Java libraries and some special libraries Android.
- Dalvik Virtual Machine, Dalvik is a virtual machine that was developed by Dan Bornstein was inspired from the name of a village located in Iceland. Dalvik is a virtual machine interpreter that executes files in the Dalvik Executable (*.Dex).
- Application Framework Application framework provides classes that can be used to develop Android applications. Moreover, it also provides a generic abstraction for accessing the device, and set the display of user interface and application resources.
- Main feature of android :
- Activity Manager, serves to control the application life cycle state and keep "Backstack" for navigational use.
- Content Providers, serves to summarize the data that allows use by other applications, such as a list of names.
- Resource Manager, to manage existing resources in the program. And providing access to resources outside the program code, such as characters, graphics, and layout files.
- Location Manager, serves to provide detailed information regarding the location of Android devices are located.
- Notification Manager, covering a wide range of alerts such as incoming messages, appointments, etc. to be displayed on the status bar.
- Application Layer ,,The peak of Android architecture diagram is a layer of applications and widgets. The application layer is the layer that is most visible to users when running the program. Users will only see the program when used without knowing the process that happens behind the application layer. This layer runs the Android runtime using the classes and services are available in the application framework.
Important features of Android is that one application can used elements from other applications (for an application that allows). For example, an application requires scroller features and other applications have developed a good scroller feature and allows other applications to use it. So developers do not need to develop something similar for the application, simply use the existing scroller.
In order for these features to work, the system must be able to run applications when any part of the application is needed, and call the java object to that part. Android is therefore different from other systems, Android does have one main display program such as the function main () in other applications. Instead, the application has a critical component that enables the system to call and run when needed.
Activities
Activity is the most important in an application, because the Activity program presents a visual display that is being used by users. Each Activity is declared in a class whose job is to display the user interface is composed of Views and respond to events.
When the activity is taken and stored in a pile there are four possible activity transition conditions that would occur 4:
Active,
any activity that on top area, then it will be seen, focused, and receive input from the user.
Paused,
in some cases the activity will be seen but not focused on this condition is called paused. This situation occurs if the activity is not transparent and fullscreen on the display. When the activity in a paused state, he looks active but can not receive input from the user.
Stopped,
when an activity is not visible, then that is what stopped Activity will remain in memory with all condition dan information. But it would be a prime candidate to be executed by the system when it needs more resources.
Inactive,
conditions when activity has ceased and before the run. Inactive activity has been removed from the stack so it needs to restart activity in order to appear and be reused.
Services
A service has no user interface, but runs in the background for an indefinite period. Processed service component is not visible, update the data source and display notifications. Service is used to perform data processing needs to be processed, even when the Activity is inactive or invisible.
Intents
Intense is a mechanism to describe certain actions, such as selecting an image, displaying web pages, and so forth. Intents do not always start by running the application, but also used by the system to notify the application if there is one thing, such as incoming messages.
Broadcast Receivers
Broadcast Receivers is a component that does not really do anything except receive and react to give notice. Broadcast largely derived from such systems, Battery is running out, time zone information has changed, or the user has changed the default language on the device.
Content Providers
Content Providers are used to manage and share databases. Data can be stored in a file system, in a SQLite database, or by other means that in principle the same. With the Content Provider enables inter-application sharing of data.
Android Application Type
There are three categories of applications on Android:
- Foreground Activity
Applications that can only be executed if appearing on the screen and remains effective even if not visible. Application with this type of activity must consider the life cycle, so that the displacement between the activity can take place smoothly.
- Background Service
Applications that have limited interaction with the user, in addition into configuration settings, all of the process is not visible on the screen.
- Intermittent Activity
Applications that still require some input from the user, but some are very effective if executed in the background and if necessary will notify the user about special conditions.for an example, a music player.
For complex applications will be difficult to determine the category of application is especially applications have characteristics of all categories. it need to be consideration of how applications are used and determine the appropriate application category.
Android Application Lifecycle
Android application lifecycle is managed by the system, based on user needs, available resources, and so forth. For example, users wants to run web browser, which will ultimately determine the system running the application. System plays an important role in determining whether the application is started, paused, or stopped altogether.
Excess Android
Openness, free development without being charged for systems based on Linux and open source.
Android basic component architecture inspired by the internet technology . The inside of an application can be used by other application, it can even be replaced with other suitable components with developed application.
Many support service, ease of use in applications such as service several SQL database, and use the map browser.
Application life cycle is set automatically, every other program and another maintained by multiple layers of security, so the system becomes more stable employment.
graphics support and the best, with support for 2D graphics and animation that was inspired by the Flash embedded in 3D using OpenGL allows creating apps and games are different.
Portability of applications, the application can be used on the current and future. All programs written using the Java programming discussed and executed by the Dalvik virtual machine, so the source code portable between ARM, X86, and the other architectures.
Disadvantages of Android
- Battery wasteful,,extravagant famous Android Handset battery, it is advised because of the effects of the many features of the android, especially the 3G feature, Maps and GPS.
- Fragmentation, Android handset made by many vendors with different screen sizes, some use a physical keyboard, some are just using the touchscreen. Android version was installed on the handset is also different, this causes wear android experience is not uniform, it is also so difficult for programmers to makes a program
- No Supports J2ME programming language,, to create programs on Android is Java, but Java which used is not compatible with J2ME, this is because Android is only "borrowed" language itself, but libraries and user interface is different, for J2ME programmer who wants to programs Android had to learn again from the beginnings..
- Many Malware, It is quite a highlight of the android is its security, a few months, the news on the Internet is decorated with a number of malware that attack Android.
- Long Update to the End User , Android was developed active enough, almost every year there are new releases,on 2010 release of froyo (2.2) and Gingerbread (2.3) and Honeycomb (3.0), it was released in 2011 Ice cream sandwich (4.0). However, from the vendor or operator, updates the user was so difficult, for example, froyo was released in May 2010, but most of the new Android users get update after a month of september, so it's almost six months, in contrast to the IOS from Apple.
More or less like that for an Android .
Hopefully increase our knowledge and beneficial to all.
For questions or information you add can provide COMMENT on a column that has been provided. Thank you

No comments:
Post a Comment