原创 硬核講解 Jetpack 之 LifeCycle 源碼篇

前一篇 硬核講解 Jetpack 之 LifeCycle 使用篇 主要介紹了 LifeCycle 存在的意義,基本和進階的使用方法。今天話不多說,直接開始擼源碼。本文基於我手裏的 android_9.0.0_r45 源碼,所有相關源碼包

原创 秉心說,不一樣的 2019

即將迎來人生的第二十七個年頭。我想,不管過去多久,2019 ,都將是我人生中極其特殊的一年。2019,我開始認真寫博客了。第一次寫博客可以追溯到三四年前剛畢業那會,在 csdn 上瞎寫,大概寫了有五六篇就荒廢了。今年認認真真寫了 50+

原创 如何正確的在 Android 上使用協程 ?

前言你還記得是哪一年的 Google IO 正式宣佈 Kotlin 成爲 Android 一級開發語言嗎?是 Google IO 2017 。如今兩年時間過去了,站在一名 Android 開發者的角度來看,Kotlin 的生態環境越來越

原创 AndroidUtilCodeKTX !是時候提升你的開發效率了 !(持續更新中...)

前言第一次接觸 Kotlin 還是 2017 年,當時 Kotlin 還沒扶正,也不是 Android 的官方開發語言。至於我是怎麼被安利的,沒記錯的話,應該是 開源實驗室 的 Kotlin 教程。當時身邊幾乎沒有人在學 Kotlin,

原创 深入理解 Handler 消息機制

記得很多年前的一次面試中,面試官問了這麼一個問題,你在項目中一般如何實現線程切換? 他的本意應該是考察 RxJava 的使用,只是我的答案是 Handler,他也就沒有再追問下去了。在早期 Android 開發的荒蕪時代,Handler

原创 在 Android 上使用協程(三) :Real Work

這裏是關於在 Android 上使用協程的一系列文章。本篇文章將着重於介紹使用協程來解決實際問題。該系列其他文章:在 Android 上使用協程(一):Getting The Background在 Android 上使用協程(二):G

原创 從源碼看 Activity 生命週期(上篇)

本文是我的 AOSP 系列 第六篇文章,往期目錄如下:Java 世界的盤古和女媧 —— ZygoteZygote家的大兒子 —— SystemServerAndroid 世界中,誰喊醒了 Zygote ?“無處不在” 的系統核心服務 —

原创 Android 程序員不得不收藏的個人博客(持續更新...)

微信不支持外鏈,請點擊原文查看文中鏈接。本文已收錄我的 Github ,持續更新中 ,歡迎點贊 !每週打開一次收藏夾裏的個人博客,已經成爲了我的人生一大樂趣。相比各大博客平臺,我一直更加偏愛個人博客。在每個人自己的這一畝三分地裏,你能看

原创 Zygote家的大兒子 —— SystemServer

本文基於 Android 9.0 , 代碼倉庫地址 : android_9.0.0_r45 文中源碼鏈接: SystemServer.java SystemServiceManager.java SystemService.ja

原创 Android 世界中,誰喊醒了 Zygote ?

本文基於 Android 9.0 , 代碼倉庫地址 : android_9.0.0_r45 文中源碼鏈接: SystemServer.java ActivityManagerService.java Process.java Z

原创 【Medium 萬贊好文】ViewModel 和 LIveData:模式 反模式

原文鏈接:https://medium.com/androiddevelopers/viewmodels-and-livedata-patterns-antipatterns-21efaef74a5