自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

carter_yu的博客

Come war and peace, Downton still stands.

  • 博客(18)
  • 资源 (5)
  • 问答 (1)
  • 收藏
  • 关注

转载 如何学习Android系统源码

参考资料Android系统的源代码非常庞大和复杂,我们不能贸然进入,否则很容易在里面迷入方向,进而失去研究它的信心。我们应该在分析它的源代码之前学习好一些理论知识,下面就介绍一些与Android系统相关的资料。我们知道,Android系统是基于Linux内核来开发的,在分析它在运行时库层的源代码时,我们会经常碰到诸如管道(pipe)、套接字(socket)和虚拟文件系统(VFS)等

2016-03-24 11:09:12 10413 2

原创 Android SparseArray浅析

SparseArray 系数数组SparseArrays map integers to Objects. Unlike a normal array of Objects, there can be gaps in the indices. It is intended to be more memory efficient than using a HashMap to map Integers

2016-03-23 14:29:48 516 1

原创 Java中的WeakReference

java语言中为对象的引用分为了四个级别,分别为 强引用 、软引用、弱引用、虚引用。强引用(StrongReference)强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。 ps:强引用其实也就是我们平时A a = new

2016-03-22 16:21:00 344 1

原创 Android源码 · IBinder

package android.os;import java.io.FileDescriptor;/** * IBinder是一个远程处理对象的基本接口,是单进程和跨进程调用时,高性能的的轻量级的远程调用机制的核心部 * 分。此接口描述与对象进行交互的抽象协议。不能直接实现这个接口,而是继承Binder。 * * Base interface for a remotable object,

2016-03-21 18:46:05 701 1

转载 给 Android 开发者的 RxJava 详解

这篇文章的目的有两个:给对 RxJava 感兴趣的人一些入门的指引给正在使用 RxJava 但仍然心存疑惑的人一些更深入的解析RxJava 到底是什么RxJava 好在哪API 介绍和原理简析1. 概念:扩展的观察者模式观察者模式RxJava 的观察者模式2. 基本实现1) 创建 Observer2) 创建 Observable3) Subscrib

2016-03-15 22:22:17 626

原创 LinearLayout布局的Layout_weight

只有在Linearlayout中,Layout_weight属性才有效。之所以android:layout_weight会引起争议,是因为在设置该属性的同时,设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。一 · warp_content先看一下布局<?xml version="1.0" encoding="utf-8"?>

2016-03-15 22:14:02 314

转载 《深入理解Java虚拟机》

在C里面我们想执行一段自己编写的机器指令的方法大概如下:typedef void(*FUNC)(int);char* str = "your code";FUNC f = (FUNC)str;(*f)(0);  也就是说,我们完全可以做一个工具,从一个文件中读入指令,然后将这些指令运行起来。

2016-03-11 10:19:31 704

转载 深入浅出RxJava四-在Android中使用响应式编程

RxAndroidRxAndroid是RxJava的一个针对Android平台的扩展。它包含了一些能够简化Android开发的工具。首先,AndroidSchedulers提供了针对Android的线程系统的调度器。需要在UI线程中运行某些代码?很简单,只需要使用AndroidSchedulers.mainThread():retrofitService

2016-03-09 16:11:01 357

转载 深入浅出RxJava三--响应式的好处

错误处理到目前为止,我们都没怎么介绍onComplete()和onError()函数。这两个函数用来通知订阅者,被观察的对象将停止发送数据以及为什么停止(成功的完成或者出错了)。下面的代码展示了怎么使用这两个函数:Observable.just("Hello, world!") .map(s -> potentialException(s)) .ma

2016-03-09 16:06:32 308

转载 深入浅出RxJava(二:操作符)

准备工作假设我有这样一个方法:这个方法根据输入的字符串返回一个网站的url列表(啊哈,搜索引擎)[java] view plain copyObservable> query(String text);   现在我希望构建一个健壮系统,它可以查询字符串并且显示结果。根据上一篇blog的内容,我们可能会写出下面的代码:[

2016-03-09 16:03:48 336

转载 深入浅出RxJava(一:基础篇)

RxJava正在Android开发者中变的越来越流行。唯一的问题就是上手不容易,尤其是大部分人之前都是使用命令式编程语言。但是一旦你弄明白了,你就会发现RxJava真是太棒了。这里仅仅是帮助你了解RxJava,整个系列共有四篇文章,希望你看完这四篇文章之后能够了解RxJava背后的思想,并且喜欢上RxJava。基础RxJava最核心的两个东西是Observabl

2016-03-09 15:58:05 376

原创 LinearLayout布局的Layout_weight

只有在Linearlayout中,Layout_weight属性才有效。之所以android:layout_weight会引起争议,是因为在设置该属性的同时,设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。一 · warp_content先看一下布局<?xml version="1.0" encoding="utf-8"?>

2016-03-09 15:45:40 478

原创 adb基本命令和Logcat基本命令

adbadb简介:ADB (Android Debug Bridge),通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。 adb有什么用?:借助

2016-03-05 16:52:02 1280

转载 ADB基本命令

ADB (Android Debug Bridge)说明:下面一些命令需要有root权限才能执行成功快速启动dos窗口执行adb:1. adb.exe所在路径添加到系统环境变量中2. 配置快捷键启动dos进入C:\WINDOWS\system32目录下,找到cmd.exe.右击菜单 "发送到" -> 桌面快捷方式。在桌面上右击"快捷方式 到 cmd.exe" -> 

2016-03-05 15:59:52 8803 2

原创 浅析“高内聚,低耦合”

面向对象的基本原则:多聚合,少继承;高内聚,低耦合多聚合聚合,是指多个元素在一起使用,组成新的元素;在Java中有“组合类”一说:一个类是由其他的类组合而成的,因此新组成的类就拥有了其组合类的属性和方法。少继承继承,是指一个类继承自另一个类,新的类就可以使用(或重写或增加)被继承类的方法;Java的继承关键字 extends ,Java遵循单一继承原则,一个类只能继承一个类,但是可以实现多个接口;关

2016-03-02 22:11:09 4118

原创 一种更清晰的Android架构

* 原文链接 : Architecting Android…The clean way? * 译者 : Mr.Simple & Sophie.Ping入门指南大家都知道要写一款精品软件是有难度且很复杂的:不仅要满足特定要求,而且软件还必须具有稳健性,可维护、可测试性强,并且能够灵活适应各种发展与变化。这时候,“清晰架构”就应运而生了,这一架构在开发任何软件应用的时候用起来非常顺

2016-03-02 21:37:47 365

原创 Long和long的区别

Java数据类型分为两类:基本数据类型(primitive types)引用数据类型(reference types)Long叫 long的包装类。Integer、Byte和Float也类似,一般包装类的名字首写是数值名的大写开头。在java中有时候的运算必须是两个类对象之间进行的,不充许对象与数字之间进行运算。所以需要有一个对象,这个对象把数字进行了一下包装,这样这个对象就可以和另一个对象进

2016-03-01 21:38:42 539

转载 Java基本数据类型

Java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定。由于是statical typed,导致Java语言也是强类型(Strong typed)的。强类型意味着每个变量都具有一种类型,每个表达式具有一种类型,并且每种类型都是严格定义的,类型限制了变量可以hold哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及操作的具体方

2016-03-01 20:55:18 430

jaxb.zip需要增加的jar包压缩包

需要增加的jar包压缩包

2019-08-15

Android面试汇总

Android面试汇总

2016-08-23

GreenDao的最新jar包

GreenDao

2016-08-16

PopupWindow遮罩层

PopupWindow遮罩层 参考博客:http://blog.csdn.net/carter_yu/article/details/50687982

2016-02-18

Android下拉菜单控件

Android下拉菜单控件(封装类)

2016-01-28

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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