[go: up one dir, main page]

0% found this document useful (0 votes)
5 views24 pages

Unit I - Android n its tool

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 24

Unit I

Android and Its Tools (4 Hrs ---4 marks)


Android Windows Phone

Company/ Developer Google Microsoft

Programmed in Java, C, C++ C, C++

OS family Unix-like Windows

Initial release September 23, 2008 October 21, 2010

Applications are created by an open Applications are created by tie up


Applications
community of developers. companies and Microsoft.

Number of applications Over 700,000 applications Limited number of applications.

Working state Current Current

Source model Open source software Closed-source

Updates Updates are provided by different parties Updates are only done by Microsoft.
Android platform
• Android is an open source and Linux-based operating system. It was
first introduced on Nov 5, 2007. It was originally developed by
Android Inc. and subsequently purchased by Google.
• it is not limited to mobile only. It is currently used in various devices
such as mobiles, tablets, televisions etc.
• allows us to build innovative apps and games for mobile devices in a
Java language environment.
Android Features….
• Messaging :SMS and MMS are available forms of messaging , Android Cloud To Device Messaging
(C2DM) and now, Android Google Cloud Messaging (GCM: allows you to send push
notifications from your server to your users' Android devices)
• Auto Correction and Dictionary:Android recommends the meaningful and correct words
matching the words that are available in Dictionary
• Voice-based features
• Multi-touch : Android has native support for multi-touch
• Multitasking: using this user can jump from one task to another and at the same time various
application can run simultaneously
• Screen capture :This features supports after Android 4.0
• Media Support : Android supports various type of audio/video/still media formats like: H.263,
H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV, JPEG,
PNG, GIF, BMP and WebP
• Multiple language support
• Storage : SQLite, a lightweight relational database, is used for data storage purposes
Android Features….
• Web Browser : The web browser available in Android
• Resizable widgets :
• Wi Fi : A technology that lets apps discover and pair directly, over a
high-bandwidth peer-to-peer connection
• Connectivity : Android supports multiple connectivity technologies
including GSM/EDGE, IDEN, CDMA, EV-DO, UMTS
Why Android platform for mobile application
development…..
• Zero/negligible development cost : The development tools like
Android SDK, JDK, and Eclipse IDE etc. are free to download for the
android mobile application development
• . Also Google charge a small fee $25, to distribute your mobile app on
the Android Market.
• Open Source
• The Android OS is an open-source platform based on the Linux kernel
and multiple open-source libraries. In this way developers are free for
building mobile apps
Why Android platform for mobile application
development…..
• Multi-Platform Support : wide range of hardware devices powered by
the Android OS.
• Even development of android mobile apps can occur on Windows,
Mac OS or Linux.
• Open Distribution Model
• Android Market place (Google Play store) has very few restrictions on
the content or functionality of an android app.
• So the developer can distribute theirs app through Google Play store
and as well other distribution channels like Amazon’s app store.
Types of mobile application
• Native : - Device oriented , app interact only with device through OS
- speedy eg: android based Calc , Calendar
• Web: not a device oriented , app interact through web browser
.example : access of Uber through web browser , Google docs
• Hybrid : combination of both. Hybrid mobile apps require users to go
to the app store, download the app and periodically get updated from
the store.
• eg : Instagram , twitter , WatsApp
What is 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
• OHA : (The Open Handset Alliance ) is a business alliance that was created for the
purpose of developing open mobile device standards. Is a group of more than 80
companies including Dell , Google, HTC .
• Importance of OHA •
• Lower overall handset costs: Opens up resources, which facilitates the focus on creating
innovative applications, solutions and services.
• Developer-friendly environment: In the open-source community, developers share notes to
expedite application development.
• Post-development: Provides an ideal channel for application marketing and distribution.

• 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 Android
version, 4.1 Jelly Bean.
Android versions
Android Applications

• Android applications are usually developed in the Java language using


the Android Software Development Kit.
• Once developed, Android applications can be packaged easily and
sold out either through a store such as Google Play, SlideME, Opera
Mobile Store and the Amazon Appstore.
• Android App categories:
Tools for App development
Tools for Android Development

• 1. Android Studio :Android Studio is the official IDE for Android


development, and includes everything you need to build Android apps.
• 2. Eclipse
• There was Eclipse before there was Android Studio. For a long time, Eclipse
was the officially preferred IDE for all Android application development.
• Instabug:
• Instabug allows beta testers and user groups to share screenshots and
detailed error logs with developers during the QA
• GameMaker: Studio:
• GameMaker provides everything you need to create 2D games using very
little code.
Android Architecture
• 1. Linux Kernal:
• This provides a level of abstraction between the device hardware and it contains
all the essential hardware drivers like camera, keypad, display etc.
• To run device app , it require CPU , memory and device resource . Kernal manage
these things.
• 2. Libraries :
• Is a collection of data which can do any number of things: set rules for app
behaviour, graphic effects, pre-written code, templates, text, communication
protocols.
• Android support many libraries to build an app
• Eg : SQLite database which is a useful repository for storage and sharing of
application data
• Eg:Media Framework to develop musical app
• 3.Android Run time:
• This section provides a key component called Dalvik Virtual Machine which is a
kind of Java Virtual Machine specially designed and optimized for Android.
• 3.Android Run time:
• This section provides a key component called Dalvik Virtual Machine which is a
kind of Java Virtual Machine specially designed and optimized for Android.
• The Dalvik VM makes use of Linux core features like memory management and
multi-threading.
• DVM (Dalvik Virtual Machine) which provide run time environment to run
android app. DVM build .DEX files.
• The Android runtime also provides a set of core libraries which enable Android
application developers to write Android applications using standard Java
programming language.

.Class Files DX tool .Dex Files APK


AAPT tool

Java files binary files


• In Lolipop version google introduce ART(Android runtime environment).
• DVM is replaced by ART.
• ART – performance is fast
• - - Improved garbage collection
• - introduce AOT (ahead of time )concept : compile the entire app at a
time
• AAPT (Android Asset Packaging tool)
• AAPT tool allow to view , create and update inside app4
• AAPT compile the resource (XML code ) to binary format to store in to device
• 4. Application Framework
• It manage basic function of our app
• Eg : Telephony Manager to provide call functionality to manages all voice calls

• Application developers are allowed to make use of these services in their applications.
• Activity Manager − Controls all aspects of the application lifecycle and activity stack.
• Content Providers − Allows applications to publish and share data with other
applications.
• Resource Manager − Provides access to non-code embedded resources such as strings,
color settings and user interface layouts.
• Notifications Manager − Allows applications to display alerts and notifications to the
user.
• View System − An extensible set of views used to create application user interfaces.

• 5. Application : eg : Alarm , Calendar , Contact etc


Android - Application Components
• Your app must declare all its components in AndroidManifest file, which must be at the root of the
app project directory.
• These components are loosely coupled by the application . Manifest file AndroidManifest.xml that
describes each component of the application and how they interact.
• There are following four main components that can be used within an Android application −
• 1.Activity : Activity performs actions on the screen.
• -For example, an email application might have one activity that shows a list of new emails, another
activity to compose an email.
• If an application has more than one activity, then one of them should be marked as the activity
that is presented when the application is launched.
• An activity is implemented as a subclass of Activity class as follows −
• Eg : Public class MainActivity extends Activity {

• 2. Service : is a component that runs in the background to perform long-running operations.


• For example, a service might play music in the background while the user is in a different application,
or
• it might fetch data over the network without blocking user interaction with an activity.
eg : Public class MyService extends Service {
Content Provider
• 4. Content Providers
• A content provider component supplies data from one application to others on
request.
• Eg : Public class MyContentProvider extends ContentProvider{
• eg : The Gallery that contains images , Contact lists that contain Contact details.
• 3. Broadcast Receivers:
• A broadcast receiver is a component that enables the system to deliver events to the
app outside of a regular user flow.
• Broadcast receiver is an Android component which allows you to send or receive
Android system or application events. All the registered application are notified by
the Android runtime once event happens.
• For example, applications can register for various system events like boot complete
or battery low, and Android system sends broadcast when specific event occur. Any
application can also create its own custom broadcasts.
• Eg : an app can schedule an alarm to post a notification to tell the user about an
upcoming event... by delivering that alarm to a BroadcastReceiver of the app.
• Public class MyReceiver extends BroadcastReceiver {
API (Application Programming Interface )level
• Android API level settings that determine your app's compatibility
with multiple versions of Android.
• each Android version is assigned a unique integer identifier, called
the API Level.
• The API level precisely identifies the version of the API set that your
app can call into
Android Eco System
• Ecosystem in Market terminology refers to the inter-dependence between demand and supply.

• Google develops android


• Users buy devices and applications
• Original Equipment makers sell devices,
• sometimes bundled with applications
• Freelance Android Developer developers have the skills
• to contribute to the ecosystem for android development ,
• they are who creates their own applications and published
• them on googles play store.

• List various tools for android application development (Any 4 tools 2 M )

• State Android ECO System. (Any 4 points 2 M )


• Describe android and importance of OHA. (4m)

• List any four features of Android operating system. (2M)

• Define Dalvik Virtual Machine (DVM). (2M)


• Describe Android architecture with diagram. (4M)

You might also like