There has always been a saying in the industry : The bottom layer with good technology may not be hard enough , But the bottom of the solid learning, progress like flying . This is why today's big factories pay great attention to the investigation of the underlying principles : In addition to the ability to see the interviewer , The underlying principle can better see the development potential of a developer .
 You should also feel this deeply , During the interview , The underlying principle is that you can't get past it anyway . The most typical is Framework, Many large factories have made clear requirements for this in their recruitment :
 <> Why do big factories have to ask Framework
Android Framework 
 Although the development is relatively low-level , Narrow circle , But something that can master some principles , By analogy , You can also develop to the application layer , Now let's see Framework How important is knowledge .
 Give me some chestnuts , You may know : Frame drop monitoring , Function Instrumentation , Slow function detection ,ANR  monitor , Start monitoring , All need to be right  Framework 
 Have a deeper understanding , To know how to monitor , What mechanism is used to monitor , Where is the function plug , Which class, which method and which property should be called by reflection ……
 and Framework in ,Binder and Handler
 It's even more important . And at present, the number of front-line Enterprises app Are multi-threaded and multi process , and Android The inter process communication mechanism is Binder,
 Native inter thread communication is Handler,Binder and Handler It is a knowledge point that must be mastered to understand the operating mechanism of Android , What's more, it's a knowledge point that must be asked in the interview of large factories :
 * Android What are the ways of multi process communication in ?
 *  What have you used for process communication ? What is the principle ?( Byte runout , millet )
 *  Describe Binder Mechanism principle ?( Oriental headlines )
 * Binder What is the working process of thread pool ?( Oriental headlines )
 * Handler How to communicate with threads , What is the principle ?( Oriental headlines )
 * Handler If there is no message processing, is it blocking or non blocking ?( Byte runout , millet )
 * handler.post(Runnable) runnable How is it implemented ?( Byte runout , millet )
 * handler of Callback and handlemessage All exist , but callback return true 
handleMessage Will it still be implemented ?( Byte runout , millet )
 * Handler of sendMessage and postDelay Differences between ?( Byte runout )
 * .…… 
 In the process of practical application , Communication mechanism is particularly important , Open an interface operation from basic , It involves multiple interactions across processes and system services ,app Layer also involves multiple thread switches within the process , How many services do you want to really understand Android , It is bound to master the communication mechanism of Android ,Handler and Binder It is also the most important communication mechanism of Android .
 To help you understand Framework Source code , In depth systematic learning Handler&Binder, And apply it to work , The former Samsung is specially invited here / Xiaomi senior R & D manager brings you 《Framework Uncover secrets of development 》 Learning material sharing , Will help you master Binder and Handler Principles and interview skills !
 You can get the required documents at the end 
 <> Chapter I   System startup process analysis 
 Section I  Android Launch overview 
  Section II  init.rc analysis 
  Section III  Zygote
  Section IV   Interview questions 
 <> Chapter II  Binder analysis 
 Section I   Macro cognition Binder
  Section II binder of jni Method registration 
  Section III binder drive 
  Section IV   data structure 
  Section V   start-up service_manager
  Section VI acquisition service_manager
  Section VII  addService technological process 
  Section VIII  Binder Full analysis of interview questions 
 <> Chapter III  Handler analysis 
 Section I   Source code analysis 
  Section II   Difficult problems 
  Section III Handler Often ask interview questions 
 <> Chapter IV  AMS  analysis 
 Section I   introduction 
  Section II  Android framework 
  Section III   communication mode  
  Section IV   System startup series 
  Section V  AMS
  Section VI  AMS  Analysis of interview questions 
 <> Chapter V  WMS analysis 
 Section I Activity And Window Related concepts 
  Section II  Android Window management service WindowManagerService calculation Activity Process analysis of window size 
  Section III Android Window management service WindowManagerService Analysis of window organization 
  Section IV  Android Window management service WindowManagerService Input method window (Input Method Window) Management analysis of 
  Section V  Android Window management service WindowManagerService Wallpaper window (Wallpaper Window) Management analysis of 
  Section VI Android Window management service WindowManagerService Calculation window Z Process analysis of shaft position 
  Section VII Android Window management service WindowManagerService display Activity Component startup window (Starting Window) Process analysis of 
  Section VIII Android Window management service WindowManagerService switch Activity window (App Transition) Process analysis of 
  Section IX  Android Window management service WindowManagerService Principle analysis of display window animation 
 <> Chapter VI PKMS Android10.0  Source code interpretation 
 Section I   preface  PKMS  What is it? ?
  Section II  PKMS  General information 
  Section III  PKMS Role location 
  Section IV  PKMS  Start analysis process 
  Section V  APK Scan of 
  Section VI  PMS Permission scanning 
  Section VII  PackageManagerService Comprehensive notes 
Technology