0% found this document useful (0 votes)
96 views13 pages

Chapter I

The document provides an overview of the Android operating system and its history and development. It discusses that Android is an open source and Linux-based operating system developed by the Open Handset Alliance led by Google. It was created to provide a free and open standard for the mobile platform that would drive innovation. The document outlines some of the key companies involved in developing Android and summarizes the different versions that have been released under "dessert names" in chronological order from 2008 to present. It also provides a brief overview of some of the core features of the Android operating system.

Uploaded by

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

Chapter I

The document provides an overview of the Android operating system and its history and development. It discusses that Android is an open source and Linux-based operating system developed by the Open Handset Alliance led by Google. It was created to provide a free and open standard for the mobile platform that would drive innovation. The document outlines some of the key companies involved in developing Android and summarizes the different versions that have been released under "dessert names" in chronological order from 2008 to present. It also provides a brief overview of some of the core features of the Android operating system.

Uploaded by

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

CHAPTER I

INTRODUCTION TO MOBILE PROGRAMMING


Android is the first complete, open, and free mobile platform. Developers enjoy a
comprehensive software development kit, with ample tools for developing powerful,
feature-rich applications. The platform is open source, relying on tried-and-true open
standards developers will be familiar with. And best of all, there are no costly barriers to
entry for developers: no required fees. (A modest fee is required to publish on thirdparty
distribution mechanisms such as the Android Market.) Android developers have numerous
options for distributing and commercializing their applications.

Google and the Open Handset Alliance In 2007, a group of handset manufacturers,
wireless carriers, and software developers (notably, Google) formed the Open Handset
Alliance, with the goal of developing the next generation of wireless platform. Unlike
existing platforms, this new platform would be nonproprietary and based on open
standards, which would lead to lower development costs and increased profits. Mobile
software developers would also have unprecedented access to the handset features,
allowing for greater innovation. As proprietary platforms such as RIM BlackBerry and
Apple iPhone gained traction, the mobile development community eagerly listened for
news of this potential game-changing platform.

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. This tutorial will teach you basic Android
programming and will also take you through some advance concepts related to Android
application development.

Android programming is based on Java programming language so if you have basic


understanding on Java programming then it will be a fun to learn Android application
development.

Android offers a unified approach to application development for mobile devices which
means developers need only develop for Android, and their applications should be able to
run on different devices powered by Android.

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.

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 and the rest,
Linux kernel changes, under the GNU General Public License version 2.

SMARTPHONE FUTURE :-
Overview of the Operating Systems used on different
mobile devices :-
Popular Mobile Operating Systems
1. Android OS (Google Inc.)

The Android mobile operating system is Google's open and free software stack that includes an operating system, middleware

and also key applications for use on mobile devices, including smartphones. Updates for the open source Android mobile

operating system have been developed under "dessert-inspired" version names (Cupcake, Donut, Eclair, Gingerbread,

Honeycomb, Ice Cream Sandwich) with each new version arriving in alphabetical order with new enhancements and

improvements.

2. Bada (Samsung Electronics)

Bada is a proprietary Samsung mobile OS that was first launched in 2010. The Samsung Wave was the first smartphone to

use this mobile OS. Bada provides mobile features such as multipoint-touch, 3D graphics and of course, application

downloads and installation.

3. BlackBerry OS (Research In Motion)

The BlackBerry OS is a proprietary mobile operating system developed by Research In Motion for use on the company’s

popular BlackBerry handheld devices. The BlackBerry platform is popular with corporate users as it offers synchronization with

Microsoft Exchange, Lotus Domino, Novell GroupWise email and other business software, when used with the BlackBerry

Enterprise Server.

4. iPhone OS / iOS (Apple)

Apple's iPhone OS was originally developed for use on its iPhone devices. Now, the mobile operating system is referred to as

iOS and is supported on a number of Apple devices including the iPhone, iPad, iPad 2 and iPod Touch. The iOS mobile

operating system is available only on Apple's own manufactured devices as the company does not license the OS for third-

party hardware. Apple iOS is derived from Apple's Mac OS X operating system.

5. MeeGo OS (Nokia and Intel)

A joint open source mobile operating system which is the result of merging two products based on open source technologies:

Maemo (Nokia) and Moblin (Intel). MeeGo is a mobile OS designed to work on a number of devices including smartphones,

netbooks, tablets, in-vehicle information systems and various devices using Intel Atom and ARMv7 architectures.

6. Palm OS (Garnet OS)

The Palm OS is a proprietary mobile operating system (PDA operating system) that was originally released in 1996 on the

Pilot 1000 handheld. Newer versions of the Palm OS have added support for expansion ports, new processors, external
memory cards, improved security and support for ARM processors and smartphones. Palm OS 5 was extended to provide

support for a broad range of screen resolutions, wireless connections and enhanced multimedia capabilities and is called

Garnet OS.

7. Symbian OS (Nokia)

Symbian is a mobile operating system (OS) targeted at mobile phones that offers a high-level of integration with

communication and personal information management (PIM) functionality. Symbian OS combines middleware with wireless

communications through an integrated mailbox and the integration of Java and PIM functionality (agenda and contacts). Nokia

has made the Symbian platform available under an alternative, open and direct model, to work with some OEMs and the small

community of platform development collaborators. Nokia does not maintain Symbian as an open source development project.

8. webOS (Palm/HP)

WebOS is a mobile operating system that runs on the Linux kernel. WebOS was initially developed by Palm as the successor

to its Palm OS mobile operating system. It is a proprietary Mobile OS which was eventually acquired by HP and now referred

to as webOS (lower-case w) in HP literature. HP uses webOS in a number of devices including several smartphones and HP

TouchPads. HP has pushed its webOS into the enterprise mobile market by focusing on improving security features and

management with the release of webOS 3.x. HP has also announced plans for a version of webOS to run within the Microsoft

Windows operating system and to be installed on all HP desktop and notebook computers in 2012.

9. Windows Mobile (Windows Phone)

Windows Mobile is Microsoft's mobile operating system used in smartphones and mobile devices – with or without

touchscreens. The Mobile OS is based on the Windows CE 5.2 kernel. In 2010 Microsoft announced a new smartphone

platform called Windows Phone 7.

Android Operating System, Its Features and Versions :-


Android is a software package and linux based operating system for mobile devices such as tablet
computers and smartphones.

It is developed by Google and later the OHA (Open Handset Alliance). Java language is mainly used
to write the android code even though other languages can be used.

The goal of android project is to create a successful real-world product that improves the mobile
experience for end users.

There are many code names of android such as Lollipop, Kitkat, Jelly Bean, Ice cream Sandwich,
Froyo, Ecliar, Donut etc which is covered in next page.

It's a consortium of 84 companies such as google, samsung, AKM, synaptics, KDDI, Garmin,
Teleca, Ebay, Intel etc.

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 Plateform.
The history and versions of android are interesting to know. The code names of android ranges
from A to J currently, such
as Aestro, Blender, Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream
Sandwitch, Jelly Bean, KitKat and Lollipop. Let's understand the android history in a sequence.

1) Initially, Andy Rubin founded Android Incorporation in Palo Alto, California, United States in
October, 2003.

2) In 17th August 2005, Google acquired android Incorporation. Since then, it is in the subsidiary
of Google Incorporation.

3) The key employees of Android Incorporation are Andy Rubin, Rich Miner, Chris
White and Nick Sears.

4) Originally intended for camera but shifted to smart phones later because of low market for
camera only.

5) Android is the nick name of Andy Rubin given by coworkers because of his love to robots.

6) In 2007, Google announces the development of android OS.

7) In 2008, HTC launched the first android mobile.

The code names of android ranges from A to N currently, such as Aestro, Blender,
Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwitch,
Jelly Bean, KitKat, Lollipop and Marshmallow. Let's understand the android history
in a sequence.

Features of Android

Features of Android
With Android operating system (OS) KitKat version 4.4 rolling out to mobile devices across the globe,
Google is on to something—Android is now more popular than iOS or the Windows phone. The OS
tends to garner rave reviews for its ease of use and open source, but many iOS or Windows phone users
argue that their preferred operating system can do just as much. In some respects that’s true, but here are
10 features unique to Android’s OS.

1) Near Field Communication (NFC)


Most Android devices support NFC, which allows electronic devices to easily interact across short
distances. The main aim here is to create a payment option that is simpler than carrying credit cards or
cash, and while the market hasn’t exploded as many experts had predicted, there may be an alternative
in the works, in the form of Bluetooth Low Energy (BLE).

2) Alternate Keyboards
Android supports multiple keyboards and makes them easy to install; the SwiftKey, Skype, and 8pen
apps all offer ways to quickly change up your keyboard style. Other mobile operating systems either
don’t permit extra keyboards at all, or the process to install and use them are tedious and time-
consuming.

3) Infrared Transmission
The Android operating system supports a built-in infrared transmitter, allowing you to use your phone or
tablet as a remote control.

4) No-Touch Control
Using Android apps such as Wave Control, users can control their phones touch-free, using only
gestures. Have messy hands but need to turn off your screen or change a song? Simple. This could prove
especially useful if you’re driving, so you can keep both eyes on the road.

5) Automation
The Tasker app lets you not only control app permissions but also automate them. Do you only want
your location services to be active during the day? Want to create a customized way to start your
music—for example, with a voice command and at a certain volume? Tasker can help.

6) Wireless App Downloads


Accessing app stores on any mobile device can be frustrating, but iOS makes it a little more difficult—
download an app on your computer, and it won’t sync to your mobile device until you plug in and access
iTunes. Using the Android Market or third-party options like AppBrain, meanwhile, let you download
apps on your PC and then automatically sync them your Droid, no plugging required.

7) Storage and Battery Swap


Android phones also have unique hardware capabilities. Google’s OS makes it possible to remove and
upgrade your battery or to replace one that no longer holds a charge. In addition, Android phones come
with SD card slots for expandable storage.

8) Custom Home Screens


While it’s possible to hack certain phones to customize the home screen, Android comes with this
capability from the get-go. Download a third-party launcher like Nova, Apex or Slide and you can add
gestures, new shortcuts, or even performance enhancements for older-model devices.

9) Widgets
Apps are versatile, but sometimes you want information at a glance instead of having to open an app and
wait for it to load. Android widgets let you display just about any feature you choose, right on the home
screen—including weather apps, music widgets, or productivity tools that helpfully remind you of
upcoming meetings or approaching deadlines.

10) Custom ROMs


This is a big one. Because the Android operating system is open source, developers can tweak the
current OS and build their own versions, which users can download and install in place of the stock OS.
Some are filled with features, while others change the look and feel of a device. Chances are if there’s a
feature you want, someone has already built a custom ROM for it.

Android is a powerful operating system competing with Apple 4GS and supports
great features. Few of them are listed below −

Sr.No. Feature & Description

1 Beautiful UI

Android OS basic screen provides a beautiful and intuitive user interface.

2 Connectivity

GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and
WiMAX.

3 Storage

SQLite, a lightweight relational database, is used for data storage


purposes.

4 Media support

H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3,
MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP.

5 Messaging

SMS and MMS

6 Web browser

Based on the open-source WebKit layout engine, coupled with Chrome's


V8 JavaScript engine supporting HTML5 and CSS3.

7 Multi-touch

Android has native support for multi-touch which was initially made
available in handsets such as the HTC Hero.

8 Multi-tasking

User can jump from one task to another and same time various
application can run simultaneously.

9 Resizable widgets

Widgets are resizable, so users can expand them to show more content
or shrink them to save space.

10 Multi-Language

Supports single direction and bi-directional text.

11 GCM

Google Cloud Messaging (GCM) is a service that lets developers send


short message data to their users on Android devices, without needing a
proprietary sync solution.

12 Wi-Fi Direct

A technology that lets apps discover and pair directly, over a high-
bandwidth peer-to-peer connection.

13 Android Beam

A popular NFC-based technology that lets users instantly share, just by


touching two NFC-enabled phones together.

Android Versions, Codename and API


Let's see the android versions, codenames and API Level provided by Google.

Version Code name API Level

1.5 Cupcake 3

1.6 Donut 4

2.1 Eclair 7

2.2 Froyo 8

2.3 Gingerbread 9 and 10


3.1 and 3.3 Honeycomb 12 and 13

4.0 Ice Cream Sandwitch 15

4.1, 4.2 and 4.3 Jelly Bean 16, 17 and 18

4.4 KitKat 19

5.0 Lollipop 21

6.0 Marshmallow 23

7.0 Nougat 24-25

8.0 Oreo 26-27

Overview of the development languages available on


different mobile devices :-
1. Python

Python is an object-oriented and high-level programming language with combined dynamic semantics
mainly for web and app development. It offers dynamic typing and dynamic binding option so it is
highly attractive in the field of Application Development. Python helps developers in reading and
translating code much easier than any others languages and it also reduces the cost of program
maintenance and development.

Python can be used for nearly everything as it is a general-purpose programming language

Unlike its beginning, python is now used to create a large application used for various commercial
system applications. The internet has gained popularity as reliance on Python has grown even more. The
web-oriented transaction system of the New York Stock Exchange (NYSE), Google’s search engine,
YouTube, these all web applications and platforms depend on Python.

Apart from python, there are more other language used such as –

2. Java
ames A. Gosling, a former computer scientist with Sun Microsystems developed Java in the mid-1990s.

Java is used to create complete applications which may run on a single computer or be distributed
among servers and clients in a network and it can also be used to build a small application module
or applet for use as part of a webpage.

3. PHP (Hypertext Preprocessor)


It is a server-side scripting language, designed by Zend Technologies in 1995. It is used for general
purpose development today but originally, was developed for websites.

After learning PHP you will be able to create dynamic websites, web applications, and all types of
mobile apps.

PHP can be considered for many other uses as well such as creating GUI, Create Facebook apps, Image
processing, content management systems, Creating PDFs, code project management tools, etc.

4. js

Buildfire.js uses the BuildFire SDK and Javascript to allow developers to build mobile apps with the
support of BuildFire backend at an unprecedented rate.

BuildFire already has 70% of the common business use cases, therefore, developers just need to
construct a specific process that is unique to the client, rather than build the whole thing from the
beginning.

This results in quicker builds, fewer frustrations, and more productivity.

BuildFire.js is easy to learn and operates with the existing framework, high potential and scalable.

5. C++

C++ features low-level memory manipulation with a general purpose object-oriented programming
language.

Regarding mobile apps, C++ has been doing unusually well since it helps to develop cross-platform
mobile apps easily with its consolidating debugging experience and powerful environment. It can be
used to design and build amazing apps for Android, Windows, and iOS.

C++ gives you access to smoothly code games, apps, and commercial software.

6. Swift

It was released by Apple Inc. in June 2014 for iOS and Linux. It is the basic programming language
used for developing iOS and OS X apps.

Swift is only available for iOS development but since it operates on Linux and is open source, it can be
used by anyone. SlideShare iOS app is one well-known example of Swift and is completely built with
Swift language.

7. Objective – C

Objective – C is also an object-oriented general-purpose programming language, derived from C. it was


the main programming language used by Apple for iOS and OS X development before Swift.

Learning and creating a mobile app through Objective – C is really easy as it is simple to use, uses
dynamic run-time, dynamic typing, and last but not the least, one can use C++ and C while using
Objective C.

8. JavaScript
It is a high-level expound programming language. JavaScript is a multi-patterned language supporting
object-oriented and functional programming.

Creating mobile apps with JavaScript is possible but on one condition, it has to be used with CSS,
HTML, and AJAX.

One has to code the app once and it can be released on all platforms such as Android, iOS, and
Windows. Thus, making the creation of a mobile app no big deal for JavaScript.

9. C#

C# is also known as C Sharp. It is component and object-oriented, multi-paradigm programming


language. This general-purpose programming language is developed Microsoft.

From server applications, games, mobile apps to web services, you can pretty much create everything in
C#. The expectations of the experts and the developers in C# has been completely changed by the
“Xamarin” platform. Xamrin is an app building tool that makes it uncomplicated for C# users to create
apps for Android and iOS users.

10. HTML5

The ‘5’ here means the fifth version of HTML (Hyper Text Markup Language). HTML5 is used to
display content on the internet.

The use of a powerful framework such as PhoneGap is the only requirement for one to create an
Android as well as iOS apps in HTML5.

HTML5 is responsive and smooth working on all devices in both the cases, may it be the creation of
mobile apps in HTML5 or in combination with APIs.

11. Pearl

The combination of pearl 5 and 6 brings Pearl as a whole. It is a high-level dynamic programming
language which uses features from other languages like AWK, C Sed, etc.

Pearl is used for a lot of applications such as website development, games development, app
development, bioinformatics, automation, and many others.

Pearl is easier than before regarding Development of Android Apps since Google has its APK available
for Pearl developers.

12. Rust

Rust is an assembled programming language by Mozilla. It is a multiple paradigm general- purpose


language. It is safer and better than C and C++. Rust has a powerful management tool which makes it
better than Ruby and Python.

This language is still on its way to being more mature. There are developers who are creating Mobile
apps using Rust. John Gallagher is amongst the one who has created an iOS app in Rust.

13. Kotlin

It is a concise, compact, and understandable language, completely compatible with Java. It’s simple
syntax and main focus on mobile development has attracted many developers.
The main features of this language include easily understandable, compact code, high level of security.
It uses native language for creating Android apps.

14. Corona

Corona is built on the programming language LUA. It works on an uncomplicated process that makes it
easier for the developers to create Mobile apps.

The basic version of Corona is available for free and offers a great advantage in creating Android and
apps.

15. QML

QML is known as Qt Meta/Modelling Language. It is a programming language with cross-platform


development ability.

Explore mobile device features not available on PCs such


as accelerometer, GPS etc :-
Many of the tasks you can do on a computer, you can also do on a smartphone or tablet.
The computing power of a flagship smartphone generally rivals the best laptops and
desktop computers of about five years ago. However, with the aid of multiple processors,
6+ gigabytes of RAM, and powerful graphics hardware, the best smartphones and tablets
can be as powerful as a mid-range desktop computer. Also, they can be just as expensive.
If you're deciding whether your next device upgrade should be a desktop computer or a
mobile device, there are some key points to consider. Below is a chart that highlights
some of the key differences and similarities of each.

Topic Computer Smartphone/Tablet

Power If you want high performance, the CPUwill use Smartphones and tablets run on batteries, which
a lot of electricity. The TDP of a powerful means they have to use power as efficiently as
desktop computer can range from 100 to possible. It would not be feasible to provide raw,
600 watts, or more. That's why high- constant CPU power to a device powered by such
performance computers are plugged into a wall: a small battery. So the newest smartphone will not
they use a lot of power. They also generate a lot give you as much power as a top-of-the-line
of heat, often requiring large heat sinks (passive desktop computer — in the foreseeable future,
cooling) as well as fans or liquid cooling anyway. Mobile devices are getting more
(active). powerful every day, but traditional computers will
always have the performance edge due to
consistent access to more electricity.
Cost Prices for a computer can vary widely, The price of a smartphone is often folded into the
depending on its capabilities, storage, and cost of a multi-year contract with a mobile
features. A mid-range computer usually costs services provider, such as Verizon or AT&T.
between $500 and $800, and some of that cost Refurbished smartphones can usually be
can be offset if you already own peripherals purchased on sites such as EBay or Amazon for
such as a monitor, keyboard, and mouse. More $100-$300, and a flagship smartphone, brand new,
powerful computers will cost you between can cost as much as $800. Tablets, depending on
$1000 and $3000, or more. size, usually cost between $300 and $700.
Storage Consumer hard drive capacities already exceed Most smartphones and tablets come with between
one terabyte (TB) and they continue to increase 8 GB and 64 GB of built-in storage. In some
in size. Even the most basic computer comes cases, an expansion slot may be available for an
with a 250 gigabyte (GB) hard drive today. This additional memory chip providing removable
applies to both desktop and laptop computers. storage. Smartphones and tablets will offer less
Netbooks such as the Google Chromebook, storage capacity than a computer, and their
which is designed primarily for working within components cannot be modified like a computer's.
a web browser, sometimes offer only 16 or 32 It's a good idea to know how much storage you
GB of space. You can always add additional require before purchasing your device, and factor
internal hard disks to your desktop computer, as that into your decision.
long as you have available drive bays and
interface connections available. An external
hard disk can be added to desktop, laptop,
and netbookcomputers.
Connectivity Desktop computers generally come Smartphones and tablets can connect to Wi-Fi
with Ethernet capability, either on networks for Internet access. Also, smartphones
the motherboard or a discrete NIC. Most can connect to a mobile data network, and many
desktop computers require a peripheraldevice, tablets offer mobile data connectivity as an option.
such as a USB Wi-Fi adapter, to connect to These tablets can also usually make phone calls on
wireless networks. Most laptops include both your mobile network. Mobile data comes at a
Wi-Fi and Ethernet networking as a standard premium, however: most mobile data plans offer a
feature. set amount of data that you can use per month,
offering additional data at an expensive, metered
fee. Speed and consistency of mobile data
connections depends on the technology used by
your specific device and mobile network.
Operating Operating systems designed for computers and Mobile operating systems
system laptops are full-featured. They are designed to (primarily Android, iOS, and Windows Mobile)
take advantage of fast CPUs, large amounts of are specialized for a specific set of devices. By
disk space, and high amounts of RAM. Also, default, they don't offer you complete access to
they take advantage of the features of modern your system hardware (Administrator or "root"
chipsets that are not available on most mobile access). They also have stricter hardware
devices. requirements because the ecosystem of mobile
apps and devices is strongly connected to specific
hardware features on the newest hardware. In
other words, you can't run the newest apps on an
older mobile OS and the newest mobile OS won't
run on a significantly old device.
Data Entry A computer uses a keyboard for data entry that Smartphones feature an on-screen touch keyboard
and user most users are familiar with and comfortable that is much smaller than that of a standard
input using. The mouse is also available for easy computer. The smaller keyboard can make typing
scrolling and clicking. more difficult for users, especially for those who
have big fingers. Some smartphones feature a
slide-out keyboard, with actual keys to press.
Again, this keyboard is much smaller than a
standard computer keyboard and can still be
difficult for some users.

You might also like