A preliminary study on android

  With the continuous development of nodejs, the scope of the front-end is getting wider and wider, so it is very necessary to have a proper understanding of the mobile terminal. For example, to develop an app using RN, the front-end must communicate with Android engineers to develop together, then learn the basic knowledge of android It is very important, because the current Android development uses the Java language, so if you want to understand Android, it is recommended to learn the basic Java language first. Here is a brief introduction to Android.

 

1. Introduction to android

  Android is an open source , Linux -based operating system for mobile devices, mainly used in mobile devices , such as smartphones and tablets, developed by Google .

  Android has many advantages , such as open source code, active community, huge market, low development cost and so on.

  Android also has many features, such as good connectivity. Support GSM/EDGE, IDEN, CDMA, EV-DO, Bluetooth, Wi-Fi, etc. A lightweight relational database using SQLite for data storage.

  The android application is developed using the android software development kit, using the java language, and once the development is completed, the android application can be easily packaged and sold on stores such as Google Play. And we mainly understand and learn how to develop and package android applications.

  In addition, if you want to develop android, you need to download the corresponding development tools, such as java JDK, Android SDK, JRE, Android Studio, etc., we can download android studio here .

  Next, we can look at the overall architecture of android:

       

  As shown above, the android operating system is a stack of software components. In the architecture diagram, it can be roughly divided into five parts and four main layers. Among these four layers, the lower the layer, the more inclined to the bottom layer, and the higher the upper layer. The more biased towards the application layer. We will introduce them one by one below:

  1. The first layer of the linux kernel . In this layer, we can see various drivers, such as display driver, camera driver, bluetooth driver, flash memory driver, USB driver and so on. That is , the bottom layer of all layers is Linux , which contains about 115 patches of Linux 3.6 and provides basic system functions: process management, memory management, device management, etc. At the same time, the kernel handles all the work that Linux is good at, such as networking and driving a large number of devices.
  2. The second layer library, android library, android runtime . This layer is a combination of a series of libraries on the Linux kernel layer, including the open source web browser engine webkit, the well-known libc library, and the SLQite database for warehouse storage and application data sharing, for playing and recording audio and video , as well as SSL libraries for network security, etc. The android runtime is the third part of the structure and also belongs to the penultimate layer. It is a key component that provides a virtual machine called Dalvik, similar to the java virtual machine, but specially designed and optimized for android. The android library includes java-based libraries specially developed for android, such as user interface construction, graphics rendering and database access.
    1. android.app - Provides access to the application model, the cornerstone of all android applications.
    2. android.content - Facilitates content access, publishing and messaging between applications and components.
    3. android.database - used to access data published by content providers, including SQLite database management classes.
    4. android.opengl - java interface to OpenGL ES 3D image rendering API.
    5. android.os - Provides the ability for applications to access annotation operating system services, including messaging, system services, and interprocess communication.
    6. android.text - render and manipulate text on the device.
    7. android.view - The fundamental building block of an application's user interface.
    8. android.widget - A rich collection of prebuilt UI components, including buttons, labels, lists, layout management, radio buttons, and more.
    9. android.webkit - A collection of classes that allow built-in web browsing capabilities for applications.
  3. The third-tier application framework . The application framework provides many advanced services for applications in the form of java classes. You can use these services as an application developer.
    1. Activity Manager - Controls all aspects of the application lifecycle and activity stack.
    2. Content Provider - Allows publishing and sharing of data between applications.
    3. Resource Manager - Provides access to non-code embedded resources such as strings, color settings, and UI layouts.
    4. Notification Manager - Allows the application to display a dialog or notify the user.
    5. View System - An extensible collection of views for creating application user interfaces.
  4. Tier 4 applications . This is all the android applications in the top layer, and the apps we write will also be installed in this layer, such as contacts, browsers, game apps, etc.

 

  

 

 

 

 

 

 

 

 

 

  

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325208343&siteId=291194637