Android multimedia mainly includes: the platform consists of the operating system, middleware, user interface and application software. Many mobile phone manufacturers are eager to use this operating system, after all, this operating system has a place in the market.
Many companies, such as HTC, Motorola, Sony Ericsson, and Samsung, have launched Android-based smart operating systems. Even many netbooks use Android operating systems. Currently, Android is the most popular smart operating system. With the advantages of Linux, the wide application of Android has eclipsed other competitors. Therefore, learning the Android operating system is of great significance.
Libraries (Libraries) and Android RunTime environment RunTime) correspond to General embedded systems, which is equivalent to the middleware layer. Android has two levels: one is a variety of libraries and the other is the Android runtime environment. Content of this layer.
Mostly implemented using C ++. Among them, a variety of libraries include: C language standard library, which is also the most underlying library in the system, C library is implemented through Linux system calls. Multimedia Framework MediaFrameword ):
This part of content is the core part of Android multimedia. Based on PacketVideo (PV), OpenCORE is divided into two parts: audio and video PlayBack ), the other part is the Recorder of audio and video records ).
SGL: 2D image engine. SSL: the Secure Socket Layer is located between the TCP/IP protocol and various application Layer protocols, providing security support for data communication. OpenGL ES 1.0: This section provides 3D support. Interface Management Tool Surface Management): This section provides Management display sub-systems and other functions.
SQLite: A General Embedded Database WebKit: FreeType core of the Web browser: bitmap and vector font functions. Various Android multimedia libraries are generally provided in the form of system middleware. A notable feature of these libraries is that they are closely related to the applications of mobile device platforms.
The Android runtime environment mainly refers to the virtual machine technology Dalvik. Dalvik Virtual Machine and general Java Virtual Machine java vm), it executes not Java standard bytecode) But Dalvik executable format. dex) in the execution file.
In the Process of execution, each application is a Process of a Process in Linux ). The biggest difference between the two is that Java VM uses Stack-based Virtual Machine (Stack-based ). Dalvik is a Register-based Virtual Machine (regiister-based ). Obviously, the biggest advantage of the latter is that it can achieve greater Optimization Based on hardware, which is more suitable for the characteristics of mobile devices.
- Precautions for learning the Android operating system
- Detailed introduction to the operations of the Android agent
- How to Design Android UI elements
- Full Analysis of Google's Android operating system
- Description of the Android apk format
Existing programming languages do not specifically optimize multi-core processors. Parker said that Go is a language written by Google engineers for such programs. It is not designed for beginners of programming, but it is not very difficult to learn to use it. Go supports object-oriented features such as closures and reflection. In terms of learning curves, Parker believes that Go is similar to Java, and Java developers should be able to easily learn Go.
The purpose of using Go as an open-source project is to give the open-source community the opportunity to create better tools to use the language, such as plug-ins in Eclipse IDE. Currently, no Go IDE is supported. Go is not used in all network applications publicly released by Google. However, Google has used this language to develop several internal projects.
Parker said that it is still early to say whether Go will affect Google's upcoming Chrome OS, but Go can indeed be used with Native Client. "Go allows applications to run perfectly in a browser," he said ." For example, you can use Go to implement Wave more efficiently, either on the front-end or on the backend.
Go has two types of compilers at the same time. One is Gccgo built on GCC, the other is a set of compilers (6g and 8g) for 64-bit x86 and 32-bit x86 computers respectively ). Google is currently developing its support for ARM chips and Android devices. Parker said, "The problem with Android multimedia is that we have never had a digital coprocessor ."