The basis of the Android platform is the Linux kernel. Android Runtime relies on the Linux kernel to perform underlying functions, such as threading and low-level memory management.

For our Android development, , generally speaking, after working for a few years, must consider the issue of advancement or career change . But the old saying of says that you have been poor for three years. If you don’t have to ,000, you have to . I think most people will not give up their current positions and salary.

If you are still working on Android and want to advance to , then understanding of Framework is essential, and goes deeper from the application layer to the Framework layer.

Android architecture

Android platform is the Linux kernel. Android Runtime (ART/Dalvik) relies on the Linux kernel to perform underlying functions, such as thread and low-level memory management.

, and above Android Runtime is the Java API Framework layer that we often come into contact with. The following figure is the system architecture diagram of Android

Why do you need to learn Android Framework?

Many application layer developers, including me, thought at the beginning that we should understand the knowledge about system code in developing upper-level applications. is actually very necessary as application layer development to understand the source code and principles of some Framework layer. I summarized the following points:

    1. Understanding the working mechanism of system components will help us solve problems. After all, the four major components we usually use are created by the system for us. After understanding the working mechanism of system components, at least when looking at the call stack of the problem log can be clearer.
    2. Android is a very excellent operating system on Linux. Learning the Android operating system can improve our understanding of the implementation of the operating system and take our technology a step further.

    How to learn Framework

    The above roughly lists the levels of the Android system, Here we need to list the relevant knowledge required for each level as follows, These only list a small number of , and will be supplemented after you have time. It takes a lot of energy to learn these points, But now many people are imminent to learn well and learn Framework, About how to learn Android Framework development knowledge . Developers who are still confused can refer to the advanced document "Android Framework Source Code Development Manual" . Today I will share it with you:

    Obtaining method: Follow the official account Android hard work Get these development documents.

    1. The essential basic skills of Android senior development engineers 2. Core knowledge notes for Android performance optimization 3. Sprint collection of Android + advanced audio and video development interview questions 4. Introduction to Android audio and video development to practical learning manual 5. Android Framework edited kernel analysis 6. Flutter practical advanced technical manual 7. Nearly 100 Android video recording and broadcasting + audio and video dome8. Android Handler mechanism analysis 

    1. Framework communication

    inter-process communication (Binder IPC mechanism)

    • Linux memory binder basic
    • Binder IPC communication principle
    • in-depth Binder driver
    • Binder interview summary (Ali articles)

    in-process communication (Handler message mechanism)

    • Loop message pump mechanism
    • Message parsing
    • Handler interview sharing (Gein Factory )

    Practical Enterprise Architecture Communication

    • LiveData Event Mechanism

    2.Framework underlying service

    AMS principle

    • SystemServer Loading AMS
    • AMS data structure
    • AMS data structure
    • Activtiy stack management
    • AMS 11
    • AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10AMS 11AMS 10APP AMS process in action
    • Activtiy management
    • AMS interview collection
    • AMS principle practical

    PMS principle

    • Packagelnstaller installer process analysis
    • PMS source code interpretation
    • T10 level interview PMS summary

    WMS mechanism

    • WMS kernel
    • Window creation process
    • Enterprise-level Toast and Window architecture system
    • T10 level positions WMS interview summary

    3.Framework system resources

    ServiceManager principle

    • init.rc file starts key services
    • service_ Manager process entry
    • ServiceManager message training
    • ServiceManager service storage svclist link list
    • ServiceManager interview summary

    Deep into the Contxt context

    • Context and ApplicationContext t
    • Context genealogy analysis
    • Contextmp and ActivityThread
    • getActivity() and getContext () Memory difference
    • will let you know different contexts Context 11

    Deep Resource resource loading

    • resources.arsc file
    • ResourcesManager Create Resource
    • LoadedApk and Resource relationship

    4.Framework event mechanism

    Event distribution mechanism

    • Three processes for Android event processing
    • Event signal from kernel to IMS process
    • IMS How to push data to ViewRootim to upper layer
    • Android handles Down events chain mode
    • Android handles Move events
    • Handwriting simulation Android event distribution architecture

    Event conflict resolution universal formula

    • Category of conflict event classification
    • Category of conflict event classification
    • Category of conflict event classification
    • Category of conflict priority
    • Category of conflict priority
    • Category of conflict simulation practical

    5.Framework UI mechanism

    UI drawing principle

    • setContentView loading data core concept
    • ViewRootlmpl drawing management
    • Choreographer choreographer
    • measurement mechanism (onMeasurement)
    • placement mechanism (onLayout)
    • T10 level interview UI drawing summary

    UI custom practical

    • RecycleView
    • Webview
    • ViewPager

    Get method: Follow the official account Android hard work Get these development documents

    1. The essential basic skills of Android senior development engineers 2. Core knowledge notes for Android performance optimization 3. Android + audio and video advanced development interview questions sprint collection 4. Android audio and video introduction to practical learning manual 5. Android Framework refined kernel analysis 6. Flutter practical advanced technical manual 7. Nearly 100 Android video recording and broadcasting + audio and video dome8. Android Handler mechanism analysis