摘要:本文基于 Android 9.0 , 代码仓库地址 : "android_9.0.0_r45" 系列文章目录: "Java 世界的盘古和女娲 —— Zygote" "Zygote 家的大儿子 —— SystemServer" "Android 世界中,谁喊醒了 Zygote ?" 文中相关源码链接: 阅读全文
posted @ 2019-10-27 23:22 秉心说 阅读 (61) 评论 (0) 编辑
摘要:前言 你还记得是哪一年的 Google IO 正式宣布 成为 Android 一级开发语言吗?是 。如今两年时间过去了,站在一名 Android 开发者的角度来看,Kotlin 的生态环境越来越好了,相关的开源项目和学习资料也日渐丰富,身边愿意去使用或者试用 Kotlin 的朋友也变多了。常年混迹掘 阅读全文
posted @ 2019-10-21 23:48 秉心说 阅读 (226) 评论 (0) 编辑
摘要:原文作者: "Jose Alcérreca" 原文地址: "ViewModels and LiveData: Patterns + AntiPatterns" 译者:秉心说 View 和 ViewModel 分配责任 理想情况下,ViewModel 应该对 Android 世界一无所知。这提升了可测 阅读全文
posted @ 2019-10-21 23:41 秉心说 阅读 (73) 评论 (0) 编辑
摘要:本文基于 Android 9.0 , 代码仓库地址 : "android_9.0.0_r45" 文中源码链接: "SystemServer.java" "ActivityManagerService.java" "Process.java" "ZygoteProcess.java" 对 和 启动流程 阅读全文
posted @ 2019-10-15 23:38 秉心说 阅读 (193) 评论 (1) 编辑
摘要:本文基于 Android 9.0 , 代码仓库地址 : "android_9.0.0_r45" 文中源码链接: "SystemServer.java" "SystemServiceManager.java" "SystemService.java" 首先来回顾一下上篇文章 "Java 世界的盘古和女 阅读全文
posted @ 2019-10-13 23:26 秉心说 阅读 (155) 评论 (0) 编辑
摘要:本文基于 Android 9.0 , 代码仓库地址 : "android_9.0.0_r45" 文中源码链接: "Zygote.java" "ZygoteInit.java" "ZygoteServer.java" "ZygoteConnection.java" "RuntimeInit.java" 阅读全文
posted @ 2019-09-28 22:53 秉心说 阅读 (283) 评论 (0) 编辑
摘要:原文作者: "Roman Elizarov" 原文地址: "Null is your friend, not a mistake" 译者:秉心说 "Kotlin Island from Wikimedia by Pavlikhin, CC BY SA 4.0" 我使用 Java 语言编程已经很久很久 阅读全文
posted @ 2019-09-18 22:50 秉心说 阅读 (209) 评论 (2) 编辑
摘要:前言 上篇文章 "深入理解 Handler 消息机制" 中提到了获取线程的 Looper 是通过 来实现的: 每个线程都有自己的 Looper,它们之间不应该有任何交集,互不干扰,我们把这种变量称为 线程局部变量 。而 的作用正是存储线程局部变量,每个线程中存储的都是独立存在的数据副本。如果你还是不 阅读全文
posted @ 2019-09-10 22:44 秉心说 阅读 (334) 评论 (0) 编辑
摘要:记得很多年前的一次面试中,面试官问了这么一个问题, 他的本意应该是考察 RxJava 的使用,只是我的答案是 ,他也就没有再追问下去了。在早期 Android 开发的荒芜时代,Handler 的确承担了项目中大部分的线程切换工作,通常包括子线程更新 UI 和消息传递。不光在我们自己的应用中,在整个 阅读全文
posted @ 2019-09-05 23:43 秉心说 阅读 (274) 评论 (2) 编辑
摘要:你的 SharedPreferences 出问题了吗? 阅读全文
posted @ 2019-08-28 23:26 秉心说 阅读 (201) 评论 (0) 编辑