Gradle 入门详解 Java 作为一门世界级主流编程语言,有一款高效易用的项目管理工具是 Java 开发者想要的。先是 2000 年的 Ant,后有 2004 年 Maven 的诞生,都在 Java 市场上取得了巨大的成功。但二者都有一定的不足和局限性。 20 2019-06-10 Gradle Gradle Android 后台服务 JobIntentService 使用详解 Android 8.0(API 26) 对系统资源的管控更加严格,添加了后台限制规则。 如果满足以下任意条件,应用将被视为处于前台: 具有可见 Activity(不管该 Activity 已启动还是已暂停); 具有前台服务; 另一个前台应 2019-06-06 Android Android Android Studio 提高 Gradle 构建速度的小技巧 长构建时间会减慢开发过程,因此本文将介绍一些可以帮助解决构建速度瓶颈的技巧。 提高构建速度的一般过程如下所示: 采取一些可以立即为大多数 Android Studio 项目带来好处的措施,优化构建配置。 分析构建配置,识别并诊断一些对项目 2019-05-28 Android Android Android Studio LeakCanary 核心原理解析 LeakCanary 是 Square 为 Android 应用提供的一个监测内存泄露的工具,可以大幅度地减少开发中遇到的内存泄露问题。 Github 官网 使用依赖dependencies { debugImplementat 2019-05-25 Android Android AOP 技术在客户端的应用与实践 常见的编程架构思想 面向对象(Object Oriented Programming) 面向过程(Procedure Oriented Programming) 面向切面(Aspect Oriented Programming) 以上三 2019-05-15 学习笔记 学习笔记 Android LocalBroadcastManager 详解 Android 中有两种广播机制,一种是 BroadcastReceiver,另一种是 LocalBroadcastManager。 应用场景 BroadcastReceiver 用于应用之间的传递消息; LocalBroadcastMa 2019-05-10 Android Android Android Activity 启动流程详解 主要对象介绍 ActivityManagerService:负责系统中所有 Activity 的生命周期; ActivityThread:App 的真正入口,当 App 启动后,会调用其 main() 方法开始执行,开启消息循环队列。是传说 2019-05-06 Android Android Java ClassLoader 详解 Java 类加载器(Java ClassLoader)是 Java 运行时环境(Java Runtime Environment)的一部分,负责动态加载 Java 类到 Java 虚拟机的内存空间中。类通常是按需加载,即第一次使用该类时才加 2019-05-02 Java Java Kotlin 内联函数的使用 Kotlin 一个强大之处就在于它的扩展函数,巧妙的运用这些扩展函数可以让你写出的代码更加优雅,阅读起来更加流畅。 内联函数在写代码的时候难免会遇到这种情况,就是很多处的代码是一样的,于是通常会抽取出一个公共方法来进行调用,这样看起来就会很 2019-04-28 Kotlin Kotlin 推荐十大经典排序算法 排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希 2019-04-27 学习笔记 算法 Java Atomic 类之 AtomicInteger 在 java.util.concurrent.atomic 包下,有 AtomicBoolean、AtomicInteger、AtomicLong、AtomicReference 等原子类,它们的基本特性就是在多线程环境下,当有多个线程同时 2019-04-23 Java Java Java Atomic 类之 AtomicBoolean 在 java.util.concurrent.atomic 包下,有 AtomicBoolean、AtomicInteger、AtomicLong、AtomicReference 等原子类,它们的基本特性就是在多线程环境下,当有多个线程同时 2019-04-19 Java Java