Navigation

Here is the information you need

Blogs


[January 31, 2016] [置頂]Android系統架構開篇

[January 31, 2016] [置頂]Flutter開篇

[September 7, 2019] 搭建Flutter Engine源碼編譯環境

[August 10, 2019] 深入理解Flutter的Platform Channel機制

[July 27, 2019] 深入理解Flutter的Isolate創建過程

[July 21, 2019] 深入理解Flutter異步Future機制

[July 20, 2019] 深入理解Flutter消息機制

[July 13, 2019] 深入理解Flutter動畫原理

[July 6, 2019] 深入理解setState更新機制

[June 29, 2019] 深入理解Flutter應用啟動

[June 23, 2019] 深入理解Dart虛擬機啟動

[June 22, 2019] 深入理解Flutter引擎啟動

[June 16, 2019] Flutter渲染機制—GPU線程

[June 15, 2019] Flutter渲染機制—UI線程

[April 6, 2019] 徹底理解安卓應用無響應機制

[March 20, 2019] Android技術架構演進與未來

[January 26, 2019] 理解Android P內部API的限制調用機制

[January 19, 2019] global reference限制策略

[January 13, 2019] 深度解讀ArrayMap優勢與缺陷

[January 6, 2019] 源碼解讀epoll內核機制

[January 5, 2019] 源碼解讀poll/select內核機制

[December 2, 2018] 源碼解讀Linux等待隊列

[June 2, 2018] 理解Android.bp

[May 19, 2018] 解讀Android進程優先級ADJ算法

[May 12, 2018] Binder Driver缺陷導致定屏的案例

[April 8, 2018] 系統角度解讀Android P新特性

[February 24, 2018] 深度剖析APP保活案例

[February 17, 2018] 跑monkey壓力測試過程的凍屏案例

[February 10, 2018] 數組越界導致系統重啟的案例

[February 3, 2018] 一行Log引發多線程并發問題的案例

[January 27, 2018] Android logd日志原理

[October 6, 2017] NotificationManagerService原理分析

[September 9, 2017] 介紹gdb調試工具

[September 2, 2017] 介紹addr2line調試命令

[August 12, 2017] /proc/stat解析

[August 6, 2017] Linux進程pid分配法

[August 5, 2017] Linux進程管理(二)--fork

[July 30, 2017] Linux進程管理(一)

[July 16, 2017] Android SDK與API Level對應關系

[July 9, 2017] Android打印Trace堆棧

[July 2, 2017] AMS之dumpsys篇

[June 25, 2017] AMS總結(一)

[June 18, 2017] 全面剖析SharedPreferences

[June 11, 2017] 四大組件之ActivityRecord

[June 4, 2017] 四大組件之ContentProviderRecord

[June 3, 2017] 四大組件之BroadcastRecord

[May 25, 2017] 四大組件之ServiceRecord

[May 19, 2017] 四大組件之綜述

[May 1, 2017] Binder異常解析

[April 23, 2017] LocalBroadcastManager原理分析

[April 16, 2017] 簡述Activity與Window關系

[April 9, 2017] 理解Android Context

[April 2, 2017] 理解Application創建過程

[March 26, 2017] loadLibrary動態庫加載過程分析

[March 19, 2017] Android類加載器ClassLoader

[March 12, 2017] 理解AlarmManager機制

[March 10, 2017] 理解JobScheduler機制

[February 25, 2017] Choreographer原理

[February 18, 2017] SurfaceFlinger繪圖篇

[February 11, 2017] SurfaceFlinger啟動篇

[February 5, 2017] Android圖形系統概述

[January 22, 2017] 以Window視角來看startActivity

[January 15, 2017] WMS—啟動窗口(StartingWindow)

[January 8, 2017] WMS—啟動過程

[January 1, 2017] Input系統—ANR原理分析

[December 31, 2016] Input系統—事件處理全過程

[December 24, 2016] Input系統—UI線程

[December 17, 2016] Input系統—InputDispatcher線程

[December 11, 2016] Input系統—InputReader線程

[December 10, 2016] Input系統—啟動篇

[December 2, 2016] 理解Android ANR的信息收集過程

[November 27, 2016] Native進程之Trace原理

[November 26, 2016] 解讀Java進程的Trace文件

[November 20, 2016] 多用戶管理UserManager

[November 13, 2016] Installd守護進程

[November 6, 2016] PackageManager啟動篇

[October 29, 2016] 進程的Binder線程池工作過程

[October 22, 2016] Android進程絕殺技--forceStop

[October 9, 2016] Android四大組件與進程啟動的關系

[October 3, 2016] Binder死亡通知機制之linkToDeath

[October 2, 2016] binderDied()過程分析

[October 1, 2016] Android系統服務的注冊方式

[September 24, 2016] 理解Android線程創建流程

[September 17, 2016] Android LowMemoryKiller原理分析

[September 4, 2016] 徹底理解Android Binder通信架構

[September 3, 2016] Binder子系統之調試分析(三)

[August 28, 2016] Binder子系統之調試分析(二)

[August 27, 2016] Binder子系統之調試分析(一)

[August 21, 2016] AndroidStudio內存工具

[August 20, 2016] AndroidStudio常用快捷鍵

[August 13, 2016] AndroidStudio源碼開發環境搭建

[August 7, 2016] Android進程調度之adj算法

[July 30, 2016] 理解ContentProvider原理

[July 23, 2016] Android存儲系統之架構篇

[July 17, 2016] Android存儲系統之源碼篇

[July 9, 2016] Android重啟流程(一)

[July 2, 2016] 理解Android ANR的觸發原理

[June 25, 2016] 理解Native Crash處理流程

[June 24, 2016] 理解Android Crash處理流程

[June 21, 2016] WatchDog工作原理

[June 20, 2016] 簡單聊一聊Throwable

[June 19, 2016] Android系統穩定性簡述

[June 15, 2016] debuggerd守護進程

[June 12, 2016] DropBoxManager啟動篇

[June 11, 2016] 調試系列2:bugreport實戰篇

[June 10, 2016] 調試系列1:bugreport源碼篇

[June 4, 2016] Android Broadcast廣播機制分析

[May 28, 2016] Android JNI原理分析

[May 21, 2016] Linux系統調用(syscall)原理

[May 15, 2016] Android EventLog含義

[May 14, 2016] dumpsys命令用法

[May 3, 2016] ContentProvider引用計數

[May 2, 2016] unbindService流程分析

[May 1, 2016] bindService啟動過程分析

[April 24, 2016] 如何自學Android

[April 23, 2016] AMS殺進程場景之匯總

[April 16, 2016] 理解殺進程的實現原理

[April 1, 2016] Linux Kernel簡介

[March 26, 2016] 理解Android進程創建流程

[March 19, 2016] 理解Android編譯命令

[March 18, 2016] 簡述Activity生命周期

[March 12, 2016] startActivity啟動過程分析

[March 6, 2016] startService啟動過程分析

[March 5, 2016] Binder IPC的權限控制

[February 28, 2016] Pm命令用法

[February 27, 2016] Am命令用法

[February 21, 2016] ActivityManagerService啟動過程

[February 20, 2016] Android系統啟動-SystemServer下篇

[February 14, 2016] Android系統啟動-SystemServer上篇

[February 13, 2016] Android系統啟動-zygote篇

[February 5, 2016] Android系統啟動-Init篇

[February 1, 2016] Android系統啟動-綜述

[January 24, 2016] Java類加載器(ClassLoader)

[January 23, 2016] Java注解(Annotation)

[January 17, 2016] 性能工具Traceview

[January 17, 2016] 性能工具Systrace

[January 16, 2016] Java線程池分析

[January 10, 2016] Android耗電統計算法

[January 3, 2016] wait、notify、sleep、interrupt對比分析

[January 2, 2016] Android內存分析命令

[January 1, 2016] Android消息機制3-Handler(實戰)

[December 27, 2015] Android消息機制2-Handler(Native層)

[December 26, 2015] Android消息機制1-Handler(Java層)

[December 20, 2015] Linux信號(signal)機制

[December 19, 2015] 進程篇—進程整理

[December 12, 2015] 進程狀態的切換

[December 6, 2015] select/poll/epoll對比分析

[December 5, 2015] 理解Refbase強弱引用

[November 28, 2015] Binder系列10—總結

[November 23, 2015] Binder系列9—如何使用AIDL

[November 22, 2015] Binder系列8—如何使用Binder

[November 21, 2015] Binder系列7—framework層分析

[November 15, 2015] Binder系列6—獲取服務(getService)

[November 14, 2015] Binder系列5—注冊服務(addService)

[November 8, 2015] Binder系列4—獲取ServiceManager

[November 7, 2015] Binder系列3—啟動ServiceManager

[November 2, 2015] Binder系列2—Binder Driver再探

[November 1, 2015] Binder系列1—Binder Driver初探

[October 31, 2015] Binder系列—開篇

[October 30, 2015] Linux內存管理

[October 26, 2015] Jvm系列5—執行子系統

[October 25, 2015] Jvm系列4—類的加載

[October 24, 2015] Jvm系列3—字節碼指令

[October 18, 2015] Jvm系列2—Class文件格式

[October 17, 2015] Jvm系列1—運行時內存結構

[October 11, 2015] ps進程命令

[October 3, 2015] Dalvik與ART虛擬機的GC調試日志

[October 1, 2015] Android進程生命周期與ADJ

[October 1, 2015] 進程優先級

[September 26, 2015] APP優化小建議

[September 20, 2015] Android Launcher源碼

[September 19, 2015] Android事件分發機制

[September 18, 2015] adb連接不上手機的解決方法

[September 13, 2015] grep && find命令用法

[September 6, 2015] 源碼解讀Android屬性動畫

[September 5, 2015] Android動畫插值器

[September 4, 2015] Android三種動畫實現

[September 2, 2015] Android中的dp、sp與px換算關系

[August 30, 2015] 數組遍歷的性能分析

[August 22, 2015] dumpsys原理簡介

[August 10, 2015] Android開發規范

[August 1, 2015] Android體系架構

[July 26, 2015] Java中的條件編譯

[July 18, 2015] 理解Java反射機制

[July 5, 2015] 設計模式-開篇

[June 28, 2015] ADB常用命令筆記

[June 27, 2015] Git常用命令

[June 21, 2015] 淺談HTTP RESTful

[June 20, 2015] 淺談HTTP協議

[June 13, 2015] SELinux 權限問題

[June 9, 2015] Atom編輯器

[June 7, 2015] 搭建Jekyll本地寫作環境

[June 6, 2015] Markdown筆記

[May 31, 2015] Activity與Service生命周期

[January 5, 2014] 5.5 探究Binder Driver

[January 4, 2014] 5.4 查詢服務

[January 3, 2014] 5.3 注冊服務

[January 2, 2014] 5.2 ServiceManager管家

[January 1, 2014] 5.1 Binder概述

万人炸金花官网