在 Android Studio 中使用 Annotation Processor

Java 的 Annotation Processor 是非常有用的功能,很多常用的库和框架都使用了 Annotation Processor 来生成代码,比如Butter Knife 就用来生成 findViewById 等代码。 对于一些模板代码使用 Annotation Proce...

2017-03-30 14:42:31

阅读数 4406

评论数 0

Android编译时注解框架系列1-什么是编译时注解

转载请注明出处:https://lizhaoxuan.github.io 概述 Android编译时注解框架从入门到项目实践。该系列将通过5篇博客一步步教你打造一个属于自己的编译时注解框架,并在之后开源出基于APT的编译时注解框架。 提到注解,普遍都会有两种态度:黑科技、低性能。...

2017-03-30 14:39:02

阅读数 423

评论数 0

Android依赖管理与私服搭建

1.Android引入依赖的多种方式 2.多平台私服搭建 3.创建和依赖自己的代码仓库 1、Android引入依赖的多种方式 引入方式一 AS切换project视图>新建libs目录(高版本AS默认存在libs目录)>copy jar 包>add a...

2017-03-13 11:44:56

阅读数 445

评论数 1

第十三章 线程安全与锁优化

一、线程安全线程安全:指当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调用和交替执行,也不需要进行额外的同步,或者在调用方法进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那么喝个对象就是线程安全的。1.Java语音中的线程安全我们可以根据线程安全的“安全程度”由强...

2017-03-09 13:42:10

阅读数 396

评论数 0

第12章 Java内存模型与线程

Java 内存模型(Java Memory Model –> JMM)用来实现屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发效果。屏蔽硬件差异、保证并发。而程序的功能就是数据流的交互,所以保证数据的快速、正确访问就是Java内存模型的核心。1.主内...

2017-03-09 13:41:05

阅读数 169

评论数 0

第八章 虚拟机字节码执行引擎

执行引擎是Java虚拟机最核心的组成部分之一。执行引擎在执行Java代码的时候可能有解释执行(通过解释器执行)和编译执行(通过即时编译器产生的本地代码执行)两种选择,也可能两者兼备,甚至还可能包含几个不同级别的编译器执行引擎。但从Java虚拟机规范中描述的执行引擎概念模型来说,所有的Java虚拟机...

2017-03-09 11:42:52

阅读数 343

评论数 0

第七章 虚拟机类加载机制

虚拟机把描述类的数据从class文件加载到内存中,并对数据进行检验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类从加载到虚拟机内存开始,到卸载出内存,一共经历了7个步骤: 1.加载 2.验证 3.准备 4.解析 5.初始化 6.使用 7.卸载 对于初始...

2017-03-09 11:41:54

阅读数 310

评论数 0

第三章 垃圾收集器与内存分配策略

3.2 对象已死吗?在堆里面存放着Java世界中几乎所有的对象实例,下面就让我们了解下垃圾收集器在对堆进行回收前,如何判断哪些对象还存活,哪些已经死去3.2.1 引用计数算法实现的原理:大致是给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻...

2017-03-09 11:35:32

阅读数 214

评论数 0

第二章 Java内存区域与内存溢出异常

2.2 运行时数据区域 方法区堆虚拟机栈本地方法栈程序计数器 2.2.1 程序计数器 是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。 字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令。 由于Java虚拟机的多线程是通过线程轮流切换并分配...

2017-03-09 11:33:17

阅读数 255

评论数 0

Android架构思考(模块化、多进程)

推荐原因:这是我看过的比较宏观层面上面来对Android架构设计上面的思考的文章,架构的设计其实在一定程度上面是根据业务的需要,同一个项目在不同阶段,往往之前的架构设计无法满足后期的需求,这时候就需要我们从新的层面上面来考虑下原有架构的不足之处和改进方案。这篇文章从项目的小型模型-中大型模型为我们...

2017-03-02 11:13:38

阅读数 620

评论数 0

Android中的Service:Binder,Messenger,AIDL(2)

前面一篇博文介绍了关于Service的一些基本知识,包括service是什么,怎么创建一个service,创建了一个service之后如何启动它等等。在这一篇博文里有一些需要前一篇铺垫的东西,建议没有看过前一篇博文的同学先去看一下前一篇: Android中的Service:默默的奉献者 (1)...

2017-02-26 11:01:48

阅读数 426

评论数 1

Android中的Service

这段时间在看一些IPC相关的东西,这里面就不可避免的要涉及到service,进程线程这些知识点,而且在研究的过程中我惊觉自己对这些东西的记忆已经开始有些模糊了——这可要不得。于是我就干脆花了点心思温故了一下,就有了这篇博文。 非常感谢Google的官方文档——尤其是其中部分文章有中文版了之后...

2017-02-26 10:35:47

阅读数 208

评论数 0

Android 事件的分发

Android 事件的分发和消费机制dispatchTouchEvent() return true; —–> stop return false; ——> if(View == Activity) { ...

2017-02-23 21:55:41

阅读数 261

评论数 0

HttpClient和HttpURLConnection的区别

总结了网上的一些资源,主要有以下两个观点: 分析一:             在研究Volley框架的源码中,发现它在HTTP请求的使用上比较有意思,在Android 2.3及以上版本,使用的是HttpURLConnection,而在Android 2.2及以下版本,使用的是HttpCli...

2017-02-22 14:01:33

阅读数 340

评论数 0

RxJava之三—— observeOn()与subscribeOn()的详解

转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51967967 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定的收货! 为什么多次调用subscribeOn()却只有第一个起作用?  为什么多次调...

2017-02-22 11:48:30

阅读数 1100

评论数 0

RxJava 之二—— Lift()详解

转载请标明出处:http://blog.csdn.net/xx326664162/article/details/53611268 文章出自:薛瑄的博客 RxJava最让人兴奋的就是它有各种各样的操作符,什么map呀,flatMap呀各种,我们今天要知其然知其所以然,那么他们是如何实现功能的...

2017-02-22 11:46:48

阅读数 546

评论数 0

RxJava之一——使用详解

转载请标明出处:http://blog.csdn.net/xx326664162/article/details/52068014 文章出自:薛瑄的博客 你也可以查看我的其他同类文章,也会让你有一定的收货! 在正文开始之前的最后,放上 GitHub 链接和引入依赖的 gradle 代码...

2017-02-22 11:45:34

阅读数 543

评论数 0

Gradle笔记——构建基础

本篇文章主要介绍一下Gradle的构建基础。它看起来似乎和Android项目没多大关系,不能让人一下子理解android项目中的Gradle配置文件,但是这篇基础真的很重要。 学习Gradle前,需要有一个Groovy语言的基础,以免被Groovy的语法困扰,反而忽略了Gradle的知识。这...

2017-02-21 09:33:51

阅读数 130

评论数 0

Gradle笔记——Gradle的简介与安装

博客对Gradle进行一个简单的介绍,以及它的安装。 Gradle介绍 Gradle是一个基于JVM的构建工具,它提供了: 像Ant一样,通用灵活的构建工具可以切换的,基于约定的构建框架强大的多工程构建支持基于Apache Ivy的强大的依赖管理支持maven, Iv...

2017-02-21 09:32:27

阅读数 239

评论数 0

Android Studio之基本Gradle使用

Android Studio的一大特色就是自动构建工具gradle的使用。 1.配置Gradle环境变量 下载最新Gradle整包 下载地址:http://www.androiddevtools.cn/index.html  配置Gradle的环境变量 ...

2017-02-20 17:43:33

阅读数 734

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭