首页
沸点
课程
APP
AI用量
作品广场
专家标注
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
文章
订阅
QNDY
更多收藏集
微信扫码分享
微信
新浪微博
QQ
40篇文章 · 0订阅
滴滴 App 的质量优化框架 Booster,开源了!
一. 序 当 App 达到一定体量的时候,肯定是要考虑质量优化。有些小问题,看似只有 0.01% 触发率,但是如果发生在 DAU 过千万的产品中,就很严重了。 滴滴这个独角兽的 DAU 早已过千万,自然有一些独到的优化方案。最近滴滴在 Github 上开源了一个 Android…
Gradle核心思想(六)自定义Gradle插件的三种方式
在上一篇文章Gradle核心思想(五)通俗易懂的Gradle插件讲解中,我介绍了什么是Gradle插件、如何使用Gradle插件、Gradle插件的作用和好处,由于篇幅的原因,还有一个重要的知识点没有讲,那就是自定义Gradle插件(自定义Gradle对象插件)。自定义Grad…
一文读懂 AOP | 你想要的最全面 AOP 方法探讨
相信大家在入门 AOP 时,常常被繁多的术语、方法和框架绕晕。AOP 好像有点耳熟?Javaseopt 是个什么?Javassist 又是啥?Dexposed、APT 也是 AOP?本篇将辅助你快速理清概念,掌握 AOP 思想,找到最适合自己业务场景的 AOP 方法。 上文 也…
一次弄懂Event Loop(彻底解决此类面试问题)
Event Loop即事件循环,是指浏览器或Node的一种解决javaScript单线程运行时不会阻塞的一种机制,也就是我们经常使用异步的原理。 是要增加自己技术的深度,也就是懂得JavaScript的运行机制。 现在在前端领域各种技术层出不穷,掌握底层原理,可以让自己以不变,…
Glide 源码分析(一):图片压缩
现在回过头来看上面的问题,在电脑上显示 55KB 的图片,png 只是这张图片的容器,他们是经过相对应的压缩算法将原图的每个像素点信息转换为另一种数据格式。 在一般情况下,这张图片占用的内容应该是:1080 * 480 * 4B = 1.98 M。 每种设备都会有所差异,以 a…
Android 进阶之HandlerThread 使用场景及源码解析
为了避免 ANR,我们常常需要在线程中做耗时操作,然后把结果抛到主线程进行处理。 Android 提供了多种用于这种场景的组件,其中一种就是本篇文章要介绍的 HandlerThread。 可以看到,非常繁琐,一层套一层看着也不美观。 HandlerThread 就是为了帮我们免…
Glide4.8源码拆解(四)Bitmap解析之"下采样"浅析
硬件位图Bitmap.Config.HARDWARE 是一种 Android O 添加的新的位图格式。硬件位图仅在显存 (graphic memory) 里存储像素数据,并对图片仅在屏幕上绘制的场景做了优化。
Android 通用圆角布局 v1.6.0
Android 通用圆角布局,快速实现圆角需求。 之前做项目的时候有圆角相关需求,在网上找了很多方案都不够满意,于是自己做了一个,目前已经使用了一段时间,更新了多个版本,我遇到的问题都进行了修复,并且添加了很多方便的可配置属性,以满足不同需求。
Android小知识-深入浅出Android系统启动流程(下)
在Android系统中,所有的应用程序及系统服务SystemServer进程都由Zygote进程通过Linux的for()函数孵化出来的,因此我们称Zygote是孵化器。 main函数中通过前面的if条件判断语句来区分当前运行在哪个进程,如果是Zygote进程,就会在注释1处将…
JS线程、Event Loop、事件循环、任务队列、宏任务
1. 前言 很多文章在介绍线程以及线程之间的关系,都存在着脱节的现象。还有的文章过于广大,涉及到了内核,本文希望以通俗易懂的话去描述晦涩的词语,可能会和实际有一丢丢的出入,但是更易理解。 我们都知道JS是单线程的,即js的代码只能在一个线程上运行,也就说,js同时只能执行一个j…