Prepare the article-Liu Bei, from weaving sandals to coding the 1th back Oh, what is Android?

Source: Internet
Author: User
Tags notification center

This is a sunny afternoon, Liu Bei Liu Xuande sitting at home while humming a tune while knitting sandals. On the sandals in a cheerful, stoned, he suddenly on the life of a hint of doubt, I was the king of Zhongshan Jing Wang, think of my ancestral technology how brilliant! Legend of my ancestral Liu Sheng classmate trial code Yimushihang, and then small bug also difficult to escape its discernment, write code better like flowing, a day, write full code of bamboo slips piled up unexpectedly have hill-like high. Alas! Look at me again, every day to weave straw sandals to live ... No way! Can no longer go down, I want to write code! So Liu Bei dropped the rest of the life of the sandals, resolutely embarked on the road of technological development.

Liu Bei went to the village, wrestling, do not know from what to do, had to turn in place in circles. Hesitation, playing far away to a black man, shouted: "You this fellow, well why in circles, see I dizzying." ”

"I do not know, I am the king of Zhongshan Jing, there is no ambition but nowhere to cast, hey"

"The original is a generation big New Jing after, forgive me, forgive me." ”

"I just casually said that the ancestors so ..."

"My name is Zhang Fei, word wing de, I am also empty a strength to vent, is a transformation to do the idea of technology house, but the transformation has no door ah!" Since you and I two people so predestined, better to my village a gather, first big eat a meal, and then discuss plans! ”

"So good!" ”

So Liu, Zhang to Zhang Fei's home, walking, face-to-face a red-faced man, pedal flip-flops, dressed in large underwear, a style of Daniel. Liu Bei looked at hurriedly approached, "Dude, look at you this posture?" An ash-level programmer? ”

Guan Yu replied, "Exactly!" In the next Guan Yu. have done some development, but recently in the road of life some lost the direction. ”

Liu Bei said, "My name is Liu Bei, this is Zhang Fei, we two are interested in software research and development on the exhibition, you see me and so on three people so destined, not as sworn as brothers, in the future mutual care and common progress!" ”

Guan Yu said, "Wow, you meet with me to be sworn, the plot development is too fast." No matter what, I just like the straightforward! ”

So three people with soil for incense, blood oath, sworn for brother, Liu Bei for eldest brother, Guan Yu, Zhang Fei small three.

After satiated, Guan Yu said, "elder brother, recently I heard that Android fire is very ah, we might as well engage in the development of Android, how to achieve a BR?" ”

"Oh, what is Android?" ”

"Wait for me slowly ..."

1.1.AndroidBasic Knowledge

Android is a smartphone operating system launched by Google and the Open Handset Alliance (open handset Alliance), with the WindowsPhone and iOS three-point smart OS world. With the rapid popularization of smartphones, the Android system continues to improve, getting more and more users, developers and manufacturers love. By the end of 2010, the market share of Android has surpassed the Symbian system, which has dominated more than 10 years, becoming the world's top smartphone operating system. The global market share of Android has reached 59% in February 2012. Of these, Android's share of the Chinese market is 68.4% per cent.

What is the reason for Android to be so hot? This has to start with the history of Android.

The history of 1.1.1.Android

In 1886, in the French science fiction "Future Eve", Lier Adam showed us a peculiar space of imagination, and the humanoid machine, Android, was also deeply engraved in the reader's mind. Now, the Green little robot Android has come into the daily life of many people.

Figure 1.1 Android Logo

Guan Yu: Big Brother! Don't tell me you haven't even seen "future Eve"! Yes, well, I haven't even seen it. The book depicts a creative inventor who invented a perfect woman at the end of his life, but after all, she was just a robot, which led to a tragedy similar to Faust. "Future Eve" will be the appearance of human-like female machine from celebrities as Android.


In 2003, Andy Rubin, the "Father of Android", Rubin the Android technology company and started developing the Android operating system. In 2005, Google acquired Android technology, and Andy continued to lead the development team at Google. In 2007, Google co-founded many manufacturers to set up the Open Handset Alliance (openhandset Alliance), the initial members of the alliance include Broadcom Company, HTC, Intel, LG, Marvell and other companies. 2008, ARM, Huawei, Sony and other companies also joined the Alliance, now the alliance has reached 84 manufacturers. The Open Handheld Alliance was established to create a more open and free mobile phone environment. The Android operating system is also being improved by the Open Handheld Alliance.

Before Android was officially released, there were two internal beta versions, Android Beta (codenamed Astro Astro Astro) and Android 1.0 (codenamed Clockwork Robot Bender). After these two editions, Google changed the Android code from the robot series to the now-used dessert series to avoid trademark problems. The dessert series is named after the Android 1.5 (codenamed Cupcakes Cupcake), and in the order of 26 English letters, each version has a dessert to name, and the next version of the dessert will represent a larger size.

We put the Android version of the code, the release time list is as follows:

Version

Code

Release time

Android 1.5

Cup Cake

April 30, 2009

Android 1.6

Donut

September 15, 2009

Android 2.1

Éclair

October 26, 2009

Android 2.2

Froyo

May 20, 2010

Android 2.3

Ginger Bread

December 7, 2010

Android 3.x

Honey Comb

February 2, 2011

Android 4.0

Ice Cream Sandwitch

October 19, 2011

Android 4.1

Jelly Bean

June 28, 2012

Figure 1-2 Android Version logo

Android version starting from 1.5, almost every six months there will be a version of the upgrade. There are a number of updates for each version upgrade that provide a lot of new features and functionality, as well as a number of non-standard Android systems that manufacturers have modified themselves. Version update too fast and non-standard Android also brings many compatibility issues.

The future of 1.1.2.Android

In the era of mobile internet, Android has a wide range of fans around the world, including Android phone users, developers and manufacturers, with its open, free and complete features. Android now accounts for nearly 60% of the global smartphone market, and the huge number of users has also brought huge business opportunities. It can be said that the grasp of Android to grasp the pulse of the mobile internet era.

From a user's point of view, people are now starting to use Android phones to make 3G calls, surf the web, watch videos, play games, listen to music, send and receive e-mails, focus on SNS community, mobile shopping and so on. The implementation of these features greatly expands the range of the user's use of the phone, making users more and more fond of using Android phones. As the Android version continues to update, more and more thoughtful features will be added to Android, and the interface will become more beautiful and smoother, which will attract more users to use the Android operating system in the future.

From a developer's point of view, Android is a Linux-centric open-source mobile operating system, and open source features allow developers to be as free as possible in the development process. This feature makes Android-based applications very rich, and the Android platform not only supports mainstream programming languages such as java,c and C + +, but also supports scripting languages such as Ruby, Python, Lua, This is also an important reason why Android has a huge developer base. From the date of Android release, there have been many developer-created Android open source forums and communities as well as small development groups at home and abroad. They are committed to improving the existing capabilities of Android, enhancing the user experience and fostering a new generation of developers.

From the manufacturer's point of view, because the Android operating system free of charge to the developer, so that manufacturers can save nearly 30% of the cost, so many vendors have been supported and support. Manufacturers have launched their own Android phones. Some of the more famous vendors include Htc,samsung,motorola,lg, and so on, as the Android version continues to update and the hardware performance of each vendor improves, there will be more Android phones available.

From a technical point of view, Android uses WebKit browser engine, with touch screen, advanced graphic display and Internet function, with the release of the update, Android technology is also constantly updated, from the original normal contact to the current data synchronization, from the initial single touch to the current multi-touch, From the simple Google Map to the current navigation system, from basic web browsing to the current HTML5, these show that the Android technology is gradually mature and perfect. In future versions of Android, there will certainly be a richer technology to come.

With the development of mobile Internet, the demand for smart phone terminal and mobile application will be more and more strong, and Android will become a surfers of this era!

1.1.3. Factors that drive Android's popularity

The Android platform has five advantages that make Android red over half of the mobile operating system.

L Openness

Openness is the biggest feature of the Android system that distinguishes it from other operating systems. The open platform will attract more developers, terminal manufacturers and users, and will allow Android-based application developers to present a pattern of contention, will make the application of a flourishing state.

Guan Yu: Big Brother! Let's talk about the benefits of openness with you! Openness is conducive to the accumulation of consumers and manufacturers of popular OH. Of course, the open platform will also bring more competition, so that consumers will be able to buy the right mobile phone at a lower price, access to rich software resources Oh. Big Brother also hesitate what, seize the development of our Android products!


L Break free from operator's bondage

In the past for a long time, especially in Europe and the United States, mobile phone applications are often restricted by operators, the use of what features access to what network, almost all by the operator control. With the edge, HSDPA these 2G to 3G mobile network gradual transition and promotion, mobile phone random access to the network is not the operator in the mouth of the joke.

L Rich choice of hardware

Due to the openness of Android, many manufacturers will launch Android phones with their own manufacturers ' features and more perfect features. Functional characteristics of the differences, but will not affect the data synchronization and software compatibility, so that users can rest assured that the purchase of favorite manufacturers of mobile phones.

L Non-limited developer

The Android platform provides a very broad, free environment for third-party developers. Developers and even individual developers are free to download the Android SDK and the Android system source code, allowing developers to drill down to system-level development, without the same limitations as other mobile operating systems, while The Android Open source community is home to a large number of Android developers who can get help here.

• Seamlessly combine Google Apps

Google has gone through 10 years of history, from search giants to comprehensive internet penetration, Google services such as maps, mail, search and so on have become connected users and the Internet is an important link, and Android platform phone will seamlessly combine these excellent Google services.

Finally, here we have to mention the efforts of Google and its leading open handheld device Alliance to promote Android. Google at the beginning of Android, in order to attract developers to host the Android developer contest, the contest lasted for several years, attracting a large number of developers, the development of popularity, the Open Handheld Device Alliance has also made a great contribution.

Architecture and features of the 1.2.Android

Android is a Linux-based operating system, from the initial version 1.0 to the latest 4.1 version of the development, each version has a lot of new features to join it, but the overall Android architecture has not changed much. What is the system architecture of Android? What is the difference between each Android version? Let's take a look at the Android system architecture and version features.

Introduction to the 1.2.1.Android platform architecture

Android platform has a very clear set of frameworks, 1-3, we can see that Android has four levels, to low to High is the Linux kernel layer, library and Android operating environment layer, application framework layer, application layer. Below is a detailed introduction to the components of each level.

Figure 1.3 Android System architecture diagram

L Linux Kernel

Android is based on a stable, updated Linux kernel that provides core services, most currently using the Linux2.6 version. The Linux kernel acts as an abstraction between hardware and software, hiding specific hardware details and providing a unified service to the upper layers, making the hardware details of the Android platform transparent to developers. The main drivers are: Display Driver, flash memory Driver, camera driver (cameradriver), audio Driver, WiFi driver, Keyboard driver (Keyboard Driver), Bluetooth driver (bluetooth® Driver), Binder IPC driver, Power Manager (energy Management). The entire Linux core software components are written in the C language, the entire bottom is the chip or portable device system hardware developers responsible, that is, audio chips in the sale of audio chips, but also when attached to the Android audio driver, and such as HTC and other portable device developers, You must also develop your own drivers for specific hardware features.

L Library

In Android, there are some class libraries for C/+ + that are used to support the functionality of different components in an Android system. These features are available to developers through the Android application Framework (Applicationframework). The following is a brief introduction to the core library in Figure 1.3:

N Surface Manager: The main function is to enable developers to access or manage the display system for seamless 2d/3d multi-application integration.

N 3D Libraries: The 3D drawing engine is primarily defined by the OpenGLES1.0 specification.

n sgl:2d graphics Engine library.

N Media framework:android Multimedia library, which supports playback and recording of a large number of popular audio and video formats and still images.

n Free Type: bitmap and vector.

N SSL: The Chinese name is "Secure Sockets Layer protocol layer", which is located between the TCP/IP protocol and various application layer protocols and provides support for data communication.

N SQLite: A set of open relational repositories that provide a lightweight relational database engine for all applications.

N WebKit: is an advanced Web browser engine.

N libc: is a BSD standard Class C library optimized for Linux embedded devices.

L Android Operating Environment

Each Android application runs on a Dalvik virtual machine instance, and its code is executed under the virtual machine's interpretation. Anroid can run multiple virtual systems simultaneously and efficiently. The Dalvik virtual machine is ideal for use on mobile devices, and it does not require fast CPU compute speed and a lot of memory space. Each virtual machine is a separate process space. The Dalvik virtual machine does not directly execute the compiled Java class file, but instead converts it to. dex format after the built-in register-based DX tool is executed. DX is a set of tools that convert Java. class to. dex format. The DEX format is a compression format designed for Dalvik and is suitable for systems with limited memory and processor speed. A DEX file typically has more than one. Class. The threading mechanism of the virtual machine and the underlying memory management mechanism all depend on some functions of the Linux kernel.

L Application Framework

The application framework layer is the API framework used to write Common Core applications. Developers can reuse these components and services in the development of their own unique applications. Developers can open up the applications they need by understanding the framework's working mechanism. Currently, all applications are comprised of these components and services, and the main components include: a rich and extensible view system, management of all package managers installed in the Android system, A resource manager (Resource Manager) that provides non-program code access, a notification Manager (Notification Manager) that provides application custom prompts for applications in the status bar, Manage the phone Manager (Telephony Manager) that calls the related features of the phone, manage the lifecycle of all applications, and provide the active navigation fallback feature of the activity manager, Enables applications to access data from another application or to share their own data with content providers (Provider), manage Map service location Manager (Locationmanager), and more. Later in this book we will cover some of these components in detail.

L Application

Android itself comes with some common Core applications, which are programs written in the Java language that run on virtual machines. These applications typically include e-mail clients, SMS programs, calendars, maps, browsers, contact management programs, and more. Developers can also develop their own applications on the Android platform according to their needs, usually written in the Java language, including various resource files.

Guan Yu: Big Brother! Do you know what the benefits of layering are? Let beauty and Wisdom, heroes and chivalrous incarnate I give you a hint. Using the interface provided on the lower layer provides a unified service for the upper layer, which can mask the changes below. When the underlying changes do not affect the upper layers, that is, each layer has its own roles, each layer provides fixed service access point SAP (service access points). In the programmer's black words is high cohesion, low coupling. That's a lot of good. Brother! With your wisdom, layering can't fool you!


1.2.2.Android Features

Android's smartphone operating system is growing at a very rapid pace, although Android is not being launched for a long time, but its capabilities are rapidly increasing. Let's take a count of the features of each version of Android.

Version

Characteristics

Android 1.1

Alarms, API samples, browsers, calculators, webcams, contacts, development kits, dial-up apps, email, maps (with Street View), information services, music, pictures, settings

Android 1.5

Video, Bluetooth A2DP, automatic bluetooth connection, uploading videos to YouTube and Picasa, copy/paste features

Android 1.6

Android App Market integration, photography, video and browsing, multi-select/delete features, gesture search, voice search application integration, greatly improved voice reading capabilities, and better support for non-standard resolutions

Android 2.0/2.1

Increase hardware speed, more screen and resolution options, large user interface improvements, support for Exchange-active wallpaper, dramatically improved virtual keyboards, new Bluetooth, new Google Maps

Android 2.2

Full Flash 10.1 support, up to 5 times faster speed, mobile hotspot for up to 8 device connections, improved moderator screen with dedicated links, extensive Exchange support improvements (including remote data erasure, Autodiscover service, full calendar support, global contact list lookup), webcam /video improvements (better onscreen control buttons, the ability to turn on flash for lighting when recording), multi-keyboard language support, Android cloud messaging, Bluetooth voice dialing, support for 720P video recording

Android 3.0

Optimized for flat screens, app extensions for Android Market, multitasking, new notification system, hardware acceleration, 3D features, video calls, and different desktop tools

Android 4.0

Virtual keys (Increase screen size and control the overall size of the phone), Desktop plugin widgets list, customizable desktop system, visual voicemail, calendar support zoom, Gmail offline search (two-line preview, and new shortcut bar at the bottom), improved virtual keyboard error correction, direct access to applications from the lock screen interface, new browser, flow control system, face recognition, face unlock, built-in photo editor, multi-task list, new Gallery layout and organization, contacts app to integrate social network information, NFC software data interaction

Android 4.1

Fast and smooth project butter user interface, offline voice input, enhanced Notification Center, Google now voice search, camera and gallery, blink unlock, accessibility

1.3. Hyun-tak has something to say

Zhang Fei: brother Ah, through the understanding of this, I have a huge confusion, but also look at eldest brother to explain to me.

Liu Bei: haha, three younger brother, fast speed to the problem, let change the social atmosphere, swept thousands of girls, stimulate the film market, improve the connotation of young people, Yushu, elegant I give you answer!

Zhang Fei: Big Brother, Android so good, we start to learn ah? How can we carry out the great cause of our ambitions?

Liu Bei : this, this ... With your wisdom, I can hardly explain it to you! Two younger brother, you come to say with three younger brother.

Guan Yu: three younger brothers! Want to write good Android, that need to practice in a breath, outside practice bones and skins. Do not see the hands of the eyes, know its why.

Zhang Fei: two elder brother you don't say that useless, Lao Zhang I do not understand, can be popular point.

Guan Yu: summing up is three points: first of all, to do more hands-on operation, put the practice in the first place; the second is, solve a problem, each solve a problem, grow a little; Finally, be good at summing up. So, in time, we will be a generation of Daniel!

Liu Bei : two younger brother sure has a set!

Guan Yu: General, the third in the world!

Zhang Fei: What kind of thing, I still do not understand ...

Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.

Prepare the article-Liu Bei, from weaving sandals to coding the 1th back Oh, what is Android?

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.