27
3. Android
Android is now widely used by people because it has many features which are similar to the computer‟s features. Those features enable android to be used in
education to make people have mobile learning which is practical and portable for learners.
a. The Nature of Android
Android is a kind of operating system which is popular recently. Android is an operating system based on Linux with a Java programming interface which
is developed by Google Vogel, 2013. It provides all necessary tools to develop Android applications such as compiler, debugger , emulator and virtual machine
to run Android programs. “Android allows background processing, provides a rich
user interface library, supports 2-D and 3-D graphics using the OpenGL libraries, access to the file system and provides an embedded SQLite database
” Vogel, 2013. Android is a comprehensive platform designed for mobile devices,
championed by Google and owned by Open Handset Alliance Gargenta, 2011. Android is a comprehensive platform means that Android is a complete
software stack for a mobile device. It allows developers to develop mobile application easily and quickly. It also allows users to customize their phone
experience substantially. In addition, it is a complete manufactures to run their devices. Open Source Platform means
“the entire stack, from low-level Linux modules all the way to native libraries, and from the application framework to
complete applications, is totally open ” Gargenta, 2011.
Android is licensed PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28 under business-friendly licenses ApacheMIT
which does not need license. Therefore, it can be freely extended, modified and used for variety purposes.
Android is a purpose-built platform for mobile devices which can run on all sorts of physical devices
. Since Android is portable, it
doesn‟t make any assumptions about a device‟s screen size, resolution, chipset, etc. Android is an operating
system designed for low powered devices that run on battery and are full of hardware such as Global Positioning System GPS receivers, cameras, light and
orientation sensors, WiFi and UMTS 3Gtelephony connectivity and a touchscreen Brahler, 2010.
Android enables applications to make use of the hardware features through abstraction and provide a defined environment for applications. Android
applications are written in Java and run in virtual machines. Applications for Android can be obtained from a central place called Android Market. The
platform was created by Android Inc. which was bought by Google and released as the Android Open Source Project AOSP in 2007. According to Lee, Android
is a mobile operating system that is based on a modified version of Linux. It was originally developed by a startup of the same name, Android, Inc. In 2005, as part
of its strategy to enter the mobile space, Google purchased Android and took over its
development work
as well
as its
development team.
http:www.educause.eduirlibrarypdfELI7067.pdf defines android as a Linux- based, open-source operating system designed for use on cell phones, e readers,
tablet PCs, and other mobile devices. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29 The Android software stack
can be subdivided into five layers: The kernel and low level tools, native libraries, the Android Runtime, the framework layer
and on top of all the applications Brahler, 2010.
Figure 2.1 Android system architecture
The kernel in use is a Linux 2.6 series kernel, modified for special needs in power management, memory management and the runtime environment. Right
above the kernel run some Linux typical daemons like bluez for Bluetooth support and wpa supplicant for WiFi encryption. As Android is supposed to run on
devices with little main memory and low powered CPUs, the libraries for CPU and GPU intensive tasks are compiled to device optimized native code. Basic
libraries like the libc or libm were developed especially for low memory consumption and because of licensing issues on Android. In this layer the surface
manager handles screen access for the window manager from the framework layer. Opposing to other frameworks, the media framework resides in this layer,
as it includes audio and video codecs that have to be heavily optimized. The PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30 Android Runtime consists of the Dalvik virtual machine and the Java core
libraries. The Dalvik virtual machine is an interpreter for byte code that has been transformed from Java byte code to Dalvik byte code. Dalvik itself is compiled to
native code whereas the core libraries are written in Java, thus interpreted by Dalvik. Frameworks in the Application Framework layer are written in Java and
provide abstractions of the underlying native libraries and Dalvik capabilities to applications. Android applications run in their own sandboxed Dalvik VM and
can consist of multiple components: Activities, services, broadcast receivers and content providers. Components can interact with other components of the same or
a different application via intents.
b. Android Features