0% found this document useful (0 votes)
16 views

Android UNIT-1

Uploaded by

Leela Rallapudi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Android UNIT-1

Uploaded by

Leela Rallapudi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

1.

Introduction to Android
Android is an open source and Linux-based Operating System for mobile devices such as smartphones and
tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other
companies.

The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007
where as the first commercial version, Android 1.0, was released in September 2008. On June 27, 2012, at
the Google I/O conference, Google announced the next Android version, 4.1 Jelly Bean

The source code for Android is available under free and open source software licenses. Google publishes
most of the code under the Apache License version 2.0

On June 27, 2012, at the Google I/O conference, Google announced the next Android version, 4.1 Jelly
Bean.

What is Open Handset Alliance (OHA)


The company named Open Handset Alliance developed Android for the first time that is based on the
modified version of the Linux kernel and other open-source software.

It was established on 5th November, 2007, led by Google. It is committed to advance open standards,
provide services and deploy handsets using the Android Platform.

Android ecosystem
Android ecosystem refers to the interdependence between the demand and supply of users, equipment
makers, and software developers. To become an android developer it is important to understand the android
ecosystem and its interdependencies.

Android ecosystem is all about the interdependence between android developers(Google), E quipment
Manufacturers, and users, as this is an ecosystem one cannot exist without the other. It is created around
the google-play-mobile application market place including Orchestrate (Google) customers and
applications.
Advantages of Android Development
The Android is an open-source Operating system and hence possesses a vast community for support.

The design of the Android Application has guidelines from Google, which becomes easier for developers
to produce more intuitive user applications.

Fragmentation gives more power to Android Applications. This means the application can run two
activities on a single screen.

Releasing the Android application in the Google play store is easier when it is compared to other platforms.

Disadvantages of Android Development

Fragmentation provides a very intuitive approach to user experience but it has some drawbacks, where the
development team needs time to adjust to the various screen sizes of mobile smartphones that are now
available in the market and invoke the particular features in the application.

The Android devices might vary broadly. So the testing of the application becomes more difficult.

As the development and testing consume more time, the cost of the application may increase, depending on
the application’s complexity and features.

2.Need of Android
3.Features of Android
Android is a powerful open-source operating system that open-source provides immense features and some
of these are listed below.

Features of Android

 Android Open Source Project so we can customize the OS based on our requirements.
 Android supports different types of connectivity for GSM, CDMA, Wi-Fi, Bluetooth, etc. for
telephonic conversation or data transfer.
 Using wifi technology we can pair with other devices while playing games or using other
applications.
 It contains multiple APIs to support location-tracking services such as GPS.
 We can manage all data storage-related activities by using the file manager.
 It contains a wide range of media supports like AVI, MKV, FLV, MPEG4, etc. to play or record a
variety of audio/video.
 It also supports different image formats like JPEG, PNG, GIF, BMP, MP3, etc.
 It supports multimedia hardware control to perform playback or recording using a camera and
microphone.
 Android has an integrated open-source WebKit layout-based web browser to support User
Interfaces like HTML5, and CSS3.
 Android supports multi-tasking means we can run multiple applications at a time and can switch
between them.
 It provides support for virtual reality or 2D/3D Graphics.
4.Programming Languages and Tools used in Developing Android Applications
Android development is generally the process of creating applications (apps) that run on devices powered
by the Android operating system, such as smartphones and tablets. It typically involves writing code using
programming languages like Java or Kotlin that designs the user interface (UI) of the app and helps in
integrating various features like data storage, networking, and user interactions.

Android Development Tools

 Android Studio
It’s the most basic tool for Android developers. It was created by both Google and JetBrains and it
is very similar to IntelliJ IDEA. It’s a great tool because it has the support of Google as well as a
large community of developers. Android Studio is a specific IDE used by Android developers. This
can also be used to develop cross-platform applications using Flutter.
 Android Debug Bridge
Android Debug Bridge - ADB is a command-line tool that allows developers to communicate with
Android devices and emulators smoothly. It is included in the Android Software Development Kit
(SDK) and performs various tasks, such as installing and debugging apps, transferring files, and
managing the device's file system.
 Android Virtual Device (AVD)
Android Virtual Device (AVD) is an emulator that allows developers to test their Android apps on
various virtual devices with different configurations. AVDs are managed and created through the
Android Studio AVD Manager, which allows developers to test their apps on different versions of
Android and a wide range of device specifications.
 Eclipse
Eclipse, a well-established Integrated Development Environment (IDE), is considered the best
option for Java developers, providing an integrated environment for development and the ability to
expose APIs as war files. A wide range of plugins is available, which makes it more convenient for
businesses than other IDEs like NetBeans.
 Firebase
Firebase is perhaps one of the best tools to use if you are not familiar with building backend API
Servers, or you may be just too lazy to build one yourself. Firebase is a Google-run backend service
that is free to use until a certain limit. This service includes databases, cloud storage, cloud
functions, authentication, and more.
 Jetpack Compose
One of the best tools to be released by Google in the past years is Jetpack Compose. This is a brand
new UI toolkit written entirely in Kotlin for Kotlin developers. Jetpack Compose reduces much of
the boilerplate code that was present in the old XML layout way of creating UIs. It is state-driven
and also 100% interoperable with Android Views.
 GitHub
GitHub is a cloud-based platform where you can store, share, and work together with others to write
code. Storing your code in a "repository" on GitHub allows you to: Showcase or share your work.
Track and manage changes to your code over time.
 Dagger Hilt
Dagger Hilt is a dependency injection library commonly used in the Android Development
community. This is an advanced technique that is popularly used in architectures like MVVM
(Model View ViewModel) and Clean Architecture.
 Coil
Coil is a brilliant library to use, especially with Kotlin and Jetpack Compose, to load images from
the internet. An image loading library for Android backed by Kotlin Coroutines.
5.Android Architecture
Android architecture contains a different number of components to support any Android device’s needs.
Among all the components Linux Kernel provides the main functionality of operating system functions to
smartphones and Dalvik Virtual Machine (DVM) provide a platform for running an Android application.

The main components of Android architecture are the following:-

 Applications
 Application Framework
 Android Runtime
 Platform Libraries
 Linux Kernel

 Applications

Applications is the top layer of android architecture. The pre-installed applications like home, contacts,
camera, gallery etc and third party applications downloaded from the play store like chat applications,
games etc. will be installed on this layer only. It runs within the Android run time with the help of the
classes and services provided by the application framework.

 Application framework

Application Framework provides several important classes which are used to create an Android
applicationIt includes different types of services activity manager, notification manager, view system,
package manager etc. which are helpful for the development of our application according to the
prerequisite.

 Application runtime

It contains components like core libraries and the Dalvik virtual machine(DVM). Mainly, it provides the
base for the application framework and powers our application with the help of the core libraries. Dalvik
Virtual Machine (DVM) is a register-based virtual machine and specially designed and optimized for
android to ensure that a device can run multiple instances efficiently.

 Libraries

The Platform Libraries includes various C/C++ core libraries and Java based libraries such as Media,
Graphics, Surface Manager, OpenGL etc. to provide a support for android development.

 Linux Kernel

Linux Kernel is heart of the android architecture. It manages all the available drivers such as display
drivers, camera drivers, Bluetooth drivers, audio drivers, memory drivers, etc. which are required during
the runtime. The Linux Kernel will provide an abstraction layer between the device hardware and the other
components of android architecture. It is responsible for management of memory, power, devices etc.

You might also like