首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
飞翔的超人
掘友等级
Android开发
平时学习 Java,Android 的一些笔记
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
34
文章 32
沸点 2
赞
34
返回
|
搜索文章
赞
文章( 32 )
沸点( 2 )
AndroidUtilCodeKTX !是时候提升你的开发效率了 !(更新啦 !)
AndroidUtilCodeKTX (以下简称 Ktx) 正式开源已经有一个月了。到目前为止,在 Github 上收获了 98 个 star 和 11 次 fork。期间上了一次 Github Trending Kotlin 分类的榜单,也收到了一些开发者的好评以及建议。经过…
细数 SharedPreferences 的那些槽点 !
最近在处理一个历史遗留项目的时候饱受其害,主要表现为偶发性的 SharedPreferences 配置文件数据错乱,甚至丢失。经过排查发现是多进程的问题。项目中有两个不同进程,且会频繁的读写 SharedPreferences 文件,所以导致了数据错乱和丢失。趁此机会,精读了一…
深入理解 Handler 消息机制
记得很多年前的一次面试中,面试官问了这么一个问题,你在项目中一般如何实现线程切换? 他的本意应该是考察 RxJava 的使用,只是我的答案是 Handler,他也就没有再追问下去了。在早期 Android 开发的荒芜时代,Handler 的确承担了项目中大部分的线程切换工作,通…
深入理解 ThreadLocal
每个线程都有自己的 Looper,它们之间不应该有任何交集,互不干扰,我们把这种变量称为 线程局部变量 。而 ThreadLocal 的作用正是存储线程局部变量,每个线程中存储的都是独立存在的数据副本。如果你还是不太理解,看一下下面这个简单的例子: 可以看到,我们在不同的线程中…
Null is your friend, not a mistake
我使用 Java 语言编程已经很久很久了,掌握了通过 Java 编写和维护大型软件(百万行代码)应该注意些什么,并亲眼目睹了全行业都在竭力避免空指针异常 NullPointerException(NPE),它困扰着大大小小的 Java 类库。在 2009 年其发明者 Tony …
Java 世界的盘古和女娲 —— Zygote
仔细看看下面这张 Android 体系图,找一下 Zygote 在什么地方。 上图来自 Gityuan 博客 。 纵观整个 Android 体系结构,底层内核空间以 Linux Kernel 为核心,上层用户空间以 C++/Java 组成的 Framework 层组成,通过系统…
Zygote家的大儿子 —— SystemServer
本篇文章的主角 system_server 进程是 Zygote 进程 fork 出的第一个进程,它负责管理和启动整个 Framework 层。 再来看看 Gityuan 的这张图片,找一下 System Server 的位置,它承载了各类系统服务的创建和启动。关于 syste…
Android 世界中,谁喊醒了 Zygote ?
Zygote 作为 Android 世界的受精卵,在成功繁殖出 system_server 进程之后并没有完全功成身退,仍然承担着受精卵的责任。Zygote 通过调用其持有的 ZygoteServer 对象的 runSelectLoop() 方法开始等待客户端的呼唤,有求必应。…
Android面试题
1.正数的原码反码补码相同,都是将数字转换为二进制形式,然后将高位补0。比如说对于8位来说: 2.而对于负数,负数的原码是它的绝对值对应的二进制,而最高位是1。所以: 左移就是将左边的操作数在内存中的二进制数据左移指定的位数,左边移空的部分补零。num <<…
AndroidUtilCodeKTX !是时候提升你的开发效率了 !(持续更新中...)
第一次接触 Kotlin 还是 2017 年,当时 Kotlin 还没扶正,也不是 Android 的官方开发语言。至于我是怎么被安利的,没记错的话,应该是 开源实验室 的 Kotlin 教程。当时身边几乎没有人在学 Kotlin,网上相关的资料也很少,我还翻译了一部分官网文档…
下一页
个人成就
文章被点赞
79
文章被阅读
26,988
掘力值
848
关注了
19
关注者
29
收藏集
5
关注标签
8
加入于
2019-03-29