Android OS




i) Features


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

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

Re-sizable widgets: Widgets are re-sizable, so users can expand them to show more content or shrink them to save space.


- Android Beam: A popular NFC-based technology that lets users instantly share, just by touching two NFC-enabled phones together.

Near Field Communication (NFC): Allows electronic devices to easily interact across short distances. 

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

Storage and Battery Swap: 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.

- Widgets: Android widgets let user display just about any feature you choose, right on the home screen which including weather apps, music widgets, or productivity tools that helpfully remind user.

Custom ROMs: 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.

ii) Development 


Java 

- Easy memory management 
- Easy to develop
- Huge open source support, with many libraries and tools available
- Protects user from many of the problems inherent in native code, like memory leaks and bad pointer usage
- Allows developers to create sandbox applications, and create a better security model

C++

- Full access to hardware
- Low memory footprint
- Good profiling and debugging tools

C

- Good set of UI controls
- Good customization options
- Fast to develop
- Simple and cheap


iii) Architecture 


Android Architecture is made up of 5 parts:
·                - Linux kernel 
                 - Hardware Abstraction Layer
·                - Libraries (Native C, C++)
·                - Android Runtime (Dalvik virtual machine)
·                - Application framework

·                - System Application 

The Linux Kernel

- Foundation of the Android platform  For example, 
- Android Runtime (ART) relies on the Linux kernel for underlying functionalities such as threading and low-level memory management.
- Allows Android to take advantage of key security features 

Hardware Abstraction Layer (HAL)

- higher-level Java API framework
- consists of multiple library modules 

Android Runtime

- ART is written to run multiple virtual machines on low-memory devices by executing DEX files, 
- A bytecode format designed specially for Android that's optimized for minimal memory footprint. 
Some of the major features of ART include the following:
  • Ahead-of-time (AOT) and just-in-time (JIT) compilation
  • Optimized garbage collection (GC)
  • Better debugging support, including a dedicated sampling profiler, detailed diagnostic exceptions and crash reporting, and the ability to set watchpoints to monitor specific fields

Native C/C++ Libraries

- ART and HAL are built from native code that require native libraries written in C and C++. 
- Android platform provides Java framework APIs 

Java API Framework

Java APIs form the building blocks developers need to create Android apps by simplifying the reuse of core, modular system components and services, which include the following:
  • A rich and extensible View System you can use to build an app’s UI, including lists, grids, text boxes, buttons, and even an embeddable web browser
  • Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files
  • Notification Manager that enables all apps to display custom alerts in the status bar
  • An Activity Manager that manages the lifecycle of apps and provides a common navigation back stack
  • Content Providers that enable apps to access data from other apps, such as the Contacts app, or to share their own data
Developers have full access to the same framework APIs that Android system apps use.

System Apps

- Android comes with a set of core apps for email, SMS messaging, calendars, internet browsing, contacts, and more. Apps included with the platform have no special status among the apps the user chooses to install. 
- Function both as apps for users and to provide key capabilities that developers can access from their own app. 


iv) Security technology/ mode



·         Android is an open source and need most of permission to run an app.
·         So as compared to iOS android lacks need of more security in it.
·         Access control, isolation, web security
·         Encryption
·         Permission-based access control
     -       Static list in manifest
     -       User presented with list at installation time
·         Wild West app marketplace
     -       Nearly any app is allowed to market
     -       Android-specific malware


v) Version History

Android 1.0 (2008)



Android 1.0 doesn’t have any specific code name. Gmail, Google Calendar, Google Maps, pull down notification window and Android market are the main features of this version. This version of Android had only 35 apps. Android Market allowed application downloads and updates through the Market application



Android 1.5 – Cupcake (2009)


Android 1.5 was the first version to get a code name It was named as cupcake and launched in April 2009. The main feature of this version was animated transition effects. Other notable features include uploading videos to YouTube, uploading photos to Picasa, third-party virtual keyboards with text prediction and user dictionary for custom words.



Android 1.6 – Donut (2009)


Android 1.6 was launched in September 2009. Multi-Select Photos in gallery, 800 x 480 resolution screen support, Android search, voice search Functionality, Handwriting gestures are some of the important features in this version.

Android 2.0/2.1 – Eclair (2009)



Eclair was launched in October 2009 focusing on media features like flash support, scene mode, white balance, color effect & Digital zoom. Speech-to-text, Improved keyboard functionality and multiple home screens, Expanded Account sync and allowing users to add multiple accounts to a device for synchronization of email and contacts are other features of this version.

Android 2.2 – Froyo (2010)




Froyo was launched in May 2010 which included Speed, memory, performance optimizations and minor bug fixes. Froyo allowed the users to install the apps on SD card, 720p screens support, USB tethering and Wi-Fi hotspot functionality.

Android 2.3 – Gingerbread (2010)




Gingerbread was launched in December 2010. Internet telephone, video chat capability and NFC communications are main features of gingerbread. Support for multiple cameras on the device, voice or video chat support using Google Talk, Google Wallet for the Nexus S 4G are other notable features.

Android 3.0/3.1/3.2 – Honeycomb (2011)

Honeycomb was launched in February 2011 and was mainly designed for Tablets. Multiple browser tabs, incognito mode, Redesigned keyboard, Hardware acceleration and accurate on larger screen sizes, ability to encrypt all user data are features of Honeycomb.

Android 4.0 – Ice Cream Sandwich (2011)

Ice Cream Sandwich was launched in October 2011 and improved UI is major update of this version. Multicore CPU support, virtual buttons, Face Unlock feature and improved copy and paste functionality are some of the important features of ice cream sandwich. This version also provided features like Easier-to-create folders, with a drag-and-drop style, Pinch-to-zoom functionality in the calendar and Built-in photo editor.

Android 4.1 / 4.2 / 4.3 – Jelly Bean (2012)

Jelly Bean was launched in July 2012 with may bug fixes. Smoother UI, Enhanced accessibility, New clock application with built-in world clock, stop watch and timer, Group Messaging, Native emoji support are major features of Jelly Bean.

Android 4.4 - KitKat (2013)


KitKat was launched in October 2013. It runs fast, smooth, and responsively on a much broader range of devices. Low power consumption sensors, improved NFC communications, printing framework, translucent UI styling are main features of KitKat versions.

Android 5.0 / 5.1 - Lollipop (2014)

On November 2014 google launched Android Lollipop that mainly focused on Performance. High-performance graphics, powerful audio, Screen capturing and sharing and Document-centric apps are main features of Lollipop version.

Android 6.0 - Marshmallow (2015)

Marshmallow was launched in October 2015. Audio Manager changes, Text Selection, Browser Bookmark Changes, Android KeyStore Changes and USB Connection are main updates of this version.

Android 7.0 - Nougat (2016)

Nougat was launched in August 2016. Scoped Directory Access, Direct Boot, Messaging Service Active Notifications and Multi-Window Playground are main updates in this version

Android 8.0 - Oreo (2017)

Oreo was launched in August 2017. Autofill Framework, Downloadable Fonts, Picture-in-Picture Mode, Notification Channels, Background Execution Limits, Background Location Restrictions and audio are main updates in Oreo.


Android 9.0 - P (Haven't Release Yet)

Android "P" is the upcoming ninth major version of the Android operating system with API level 28. It was first announced by Google on March 7, 2018.


No comments:

Post a Comment