首页
沸点
课程
APP
AI用量
作品广场
专家标注
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Android
订阅
二代
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
抖音 Android 性能优化系列:启动优化之理论和工具篇
启动性能是 APP 使用体验的门面,启动过程耗时较长很可能导致用户使用 APP 的兴趣骤减,本文基于过往对抖音 Android 客户端做启动性能优化的实战经验总结提炼出普适性的方法论,与大家分享。
Gradle基础 构建生命周期和Hook技术
对于初学者来说,面对各种各样的Gradle构建脚本,想要梳理它的构建流程,往往不知道从何入手。Gradle的构建过程有着固定的生命周期,理解Gradle的生命周期和Hook点,有助于帮你梳理、扩展项目的构建流程。 任何Gradle的构建过程都分为三部分:初始化阶段、配置阶段和执…
Java内存问题 及 LeakCanary 原理分析
前些天,有人问到 “开发过程中常见的内存泄漏都有哪些?”,一时脱口而出:静态的对象中(包括单例)持有一个生命周期较短的引用时,或内部类的子代码块对象的生命周期超过了外面代码的生命周期(如非静态内部类,线程),会导致这个短生命周期的对象内存泄漏。总之就是一个对象的生命周期结束(不…
面试:Handler 的工作机制是怎样的呢?
基本都用 RxJava 的线程调度切换,嗯对,就是那个 observeOn 和 subscribeOn 可以直接处理,比如网络操作,RxJava 提供了一个叫 io 线程的处理。 当然用过呀。 Handler 工作流程基本包括 Handler、Looper、Message、Me…
Activity启动流程(基于Android26)
Activity 启动流程,基于比较新的 Android 26 进行源码分析,欢迎大家一起讨论
2017Android 面试回忆录「上」(腾讯/阿里/滴滴/美团...)
2017 年中 腾讯、阿里、滴滴、美团 Android 面试集锦
HashMap就是这么简单【源码剖析】
threshold这个成员变量是阈值,决定了是否要将散列表再散列。它的值应该是:capacity * load factor才对的。 我们是根据key的哈希值来保存在散列表中的,我们表默认的初始容量是16,要放到散列表中,就是0-15的位置上。也就是tab[i = (n - 1…
Python 工匠:编写条件分支代码的技巧
我一直觉得编程某种意义上是一门『手艺』,因为优雅而高效的代码,就如同完美的手工艺品一样让人赏心悦目。 在雕琢代码的过程中,有大工程:比如应该用什么架构、哪种设计模式。也有更多的小细节,比如何时使用异常(Exceptions)、或怎么给变量起名。那些真正优秀的代码,正是由无数优秀…
应用被其他app打开时,不同启动模式下activity任务栈的变化
问题描述:我们的app被其他app启动进入MainActivity,然后MainActivity连续调用两次startActivity分别启动IndexActivity和CommonActivity,先启动的IndexActivity,然后启动的CommonActivity,然…