240 发简信
IP属地:广东
  • 正则表达式要点整理

    贪婪:默认情况下 *、?、+ 和 {n,m} 是贪婪的,因为它们消耗到最后一个能满足整个模式的所有字符。要让它们停在 首个 可能的字符, 要在它...

  • 造轮子之 Android 多线程多任务断点续传下载器(实现篇)

    上一篇 分析了实现一个 Android 多任务多线程下载器需要考虑的问题,这一篇就开始分析具体的代码实现了Demo地址:https://gith...

    0.2 4499 3 19
  • 造轮子之 Android 多线程多任务断点续传下载器(设计篇)

    前段时间面试,被问到 app 的自动更新是怎么做的,文件下载怎么实现的?用了多线程吗?是否支持断点续传?一下蒙逼,因为直接用第三方框架实现的文件...

    0.2 2306 1 11
  • Service 生命周期的一些注意事项

    1. 简单情形 1.1 startService() -> stopService() 调用 startService() 启动服务:onCre...

  • Resize,w 360,h 240
    Java 面试&基础100问(持续更新)

    这不只是一篇面试题的汇总,也有自己在学习 Java 过程总结的比较重要的或容易模糊的知识点,故整理如下 1. 为什么说内部类会隐式持有外部类的引...

  • Android事件分发机制源码分析及总结

    事件的分发在 View 中和 ViewGroup 中有所不同,分两部分进行分析 1. View 中的事件分发 View 的事件分发都从 disp...

  • Resize,w 360,h 240
    startService() 流程分析

    总结了几篇系统底层相关的文章,终于要接触到应用层了,不过需要提前掌握 Binder架构,系统启动流程,进程启动流程 的相关姿势,不然很难理清整个...

  • Android 进程启动流程总结

    Android 中所有应用的进程都是从 Zygote 分裂出来的,而进程也是承载各种应用、服务的基础,所以启动任何的服务和应用的第一步就是创建一...

  • Android 系统启动流程总结

    1. 从 init 开始(init.cpp) init 进程是用户空间启动的第一个进程,init 通过:解析 init.rc 文件 -> 创建 ...