自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (3)
  • 收藏
  • 关注

原创 《Effective Java》第10章 并发

本章给出一些建议帮忙程序员编写出清晰,正确,文档组织良好的并发程序。

2017-04-08 18:31:57 501

原创 《Effective Java》第9章 异常

充分发挥异常的优点,可以提高程序的可读性,可靠性和可维护性,如果使用不当,它们也会带来负面影响。

2017-04-08 17:13:55 602

原创 《Effective Java》第8章 通用程序设计

本章主要涉及Java语言的具体细节,讨论了局部变量的处理,控制结构,类库的用法,各种数据类型的用法,以及两种不是语言本身提供的机制(reflection和native method,虚拟机JVM提供支持的)的用法。

2017-04-08 14:39:50 407

原创 《Effective Java》第7章 方法

本章主要讨论方法设计的几个面:如何处理参数和返回值,如何设计方法签名,如何为方法编写文档。

2017-04-08 12:48:25 718

原创 《Effective Java》第6章 枚举与注解

Jdk 1.5发行版本新增了两个引用类型家族:一种新的类称作枚举类型(enum);另一种新的接口称作注解类型(annotation type)

2017-01-08 17:10:40 472

原创 《Effective Java》第5章 泛型

Java 1.5发行版本中增加了泛型,在没有泛型之前,从集合中读取到的每一个对象都必须进行类型转换,如果有人不小心插入了类型错误的对象,在运行时的转换处理就会出错。而有了泛型之后呢,可以告诉编译器每个集合中都接受那些对象类型,编译器自动地为你的插入进行转化,并在编译时告知是否插入了类型错误的对象,这样尽早的暴露错误,保证后续的运行安全。

2017-01-07 17:05:46 1209

原创 《Effective Java》第4章 类和接口

类和接口是Java程序设计语言的核心,那么类和接口的设计上必然会有一些大师的指导性原则,能够指导我们设计出有用,健壮和灵活的类和接口。

2017-01-02 12:23:20 508

原创 《Effective Java》第3章 对于所有对象都通用的方法

Object类默认为所有类的基类,其虽然为一个具体的类,但是它的设计主要是为了扩展,而它的所有非final的方法(equals, hashCode, toString, clone和finalize)都有明确的通用约定, 如果在自定义类时要重写这些方法,需要注意主动遵守这些约定,不然一些依赖于这些约定的类(如HashMap和HashSet)将无法正确工作。通用概念1.值类:表示值的

2016-12-24 20:48:18 492

原创 《Effective Java》第2章 创建和销毁对象

学习一门语言有三个重要的部分必须要掌握:语法(该门语言的结构如何),词汇(如何用该语言命名你想要讨论的事物),用法(如何用惯用和高效的方式表达日常事物)。 那么《Effective Java》就是描述Java语言的用法很不错的一本书,阅读学习本书能够为程序员提供很多很好的编写Java代码的建议,从写代码的时候就避免掉进一些不必要的陷阱,减轻后续的debug的工作量。 也就是借鉴牛人们的经典建议,避

2016-12-17 14:01:59 456

原创 设计模式-可复用面向对象软件的基础 [读书笔记]

1.将软件与设计模式比拟为城市与建筑模式,那么在面向对象的解决方案里,我们将对象和接口看成墙壁和门窗,模式的核心在于提供了相关问题的解决方案。  在软件设计中可能会遇到很多类似的问题,在每次遇到类似问题时我们不必全都新想办法来解决,而可以复用之前解决类似问题的方案,解决问题多之后就  会有针对特定问题有特定(相对固定)的方式方法来解决,这相对固定的方式方法就是设计模式,其也算是经验总结。

2016-04-17 10:26:07 4503

转载 Android Building System 分析

本文转自Thinker,原文链接地址如下:http://heaven.branda.to/~thinker/GinGin_CGI.py/show_id_doc/393想要了解一個系統,我常會從 makefile 或是 building system 下手, 以了解系統組成元素為何? 目錄結構為何? 對於 Android ,我也不例外。 透過了解 building syste

2016-03-18 15:27:18 537

原创 JNI Study Notes

1.JNI的初步认识Java语言的执行环境是JVM(JAVA虚拟机),JVM其实是主机环境中的一个进程,每个JVM虚拟机进程在本地环境中都对应有一个JavaVM的结构体,用来记录当前JVM进程的相关环境数据。该结构体在创建Java虚拟机时被返回,在JNI中创建JVM的函数为JNI_CreateJavaVM。在JNI的双向调用(JavaC/C++)过程中,JNIEnv是一个很

2016-02-22 20:52:30 676

原创 Android Build (1) -- Source Code Build Steps

1.下载过Android整套源代码的亲应该很熟悉的一个操作就是product编译前的几个步骤,   source build/envsetup.sh   lunch $ComboName   make -j42.那么第一步source的envsetup.sh有些什么作用呢?让我们来看一下envsetup.sh中的内容,   其实其就是一些shell脚本方法的集合,方便平台deb

2016-02-22 20:41:13 1387

原创 Android Proguard介绍

ProGuard算是Android上的一大利器,主要进行java代码的裁剪压缩,优化,混淆以及预校验,在日常工作中有时会出现一些很奇怪的问题,明明我的代码里面有这个类,属性或者接口,可是为啥到用的时候死活提示就没有了呢?这类奇葩问题在还没有接触ProGuard的亲面前可谓是相当无语,当你知道有ProGuard之后一切都迎刃而解了,都是ProGuard在做优化裁剪的时候可能没有human b

2015-12-23 14:58:11 1486

翻译 Android Code Style Guidelines for Contributors

英文原文地址:https://source.android.com/source/code-style.html#java-language-rules刚入门在进行软件开发的时候,可能在写code的时候有的亲是随心所欲想怎么写就怎么写,只要功能OK就行,而有的亲呢可能会想我的变量名要怎么见名知意, 我的code要怎么写才健壮等等,当然我更看好后一种想法的小伙伴了,因为有一个

2015-10-25 12:18:57 698

原创 Android IPC 进程间通信实现理解

众所周知,Android中的IPC(进程间通信)采用了Binder机制,那么要理解进程间通信是如何实现的,理解Binder机制就相当关键了。首先,为什么Android的IPC要采用Binder机制呢,查阅资料,Binder机制的优点在于其少了一次拷贝过程,传统的IPC需要将发送端发送的数据从用户空间copy到内核空间,在给到接受者时,再从内核空间copy给接受者,一次IPC请求需要两次拷贝

2015-08-28 13:49:01 959

转载 Avoiding memory leaks ---- Context Leak 篇

原文地址:http://android-developers.blogspot.tw/2009/01/avoiding-memory-leaks.htmlAndroid applications are, at least on the T-Mobile G1, limited to 16 MB of heap. It's both a lot of memory for a

2015-08-06 13:50:23 1088

翻译 关于Surface,Window,View,SurfaceView,Bitmap的理解

当启动一个Activity的时候在startActivity的后期会给当前启动的Activity添加一个window,而如上翻译所述WindowManager在创建window的同时会为其创建一个surface用来绘制界面用,Activity启动之后对应的Window对象其实是PhoneWindow,PhoneWindow中创建了当前窗口中的根view---DecorView,之后此window对应的View tree就挂在这个DecorView上,窗口上所有的View会通过Canvas调用Hwui相关的接

2015-08-03 16:53:32 2062

转载 chromium之国际化

转载地址:http://blog.sina.com.cn/s/blog_54e1b5250100rr61.html说到国际化,首先得明白这个概念,其实说白了就是支持多种语言。chromium在Windows平台怎么做的呢?简单的将就是将每一种语言打包成一个dll,在程序启动的时候根据操作系统的语言配置、本地程序配置和程序参数指定等因素决定一个语言类型,然后加载这个对应的dll。这些dll有

2015-06-16 11:10:43 1823

原创 Apache Tomcat+OpenGrok 安装配置

之前有过一段web应用开发的经历,最近想要能够通过一种尽量快的方式来检索本地的Android的Source Code,所以今天研究一下怎么在本地机器部署OpenGrok, 配置完成记录一下[ubuntu 12.04].1.安装JDK 1.7   sudo apt-get install openjdk-7-jdk   vi /etc/profile 将export JAVA_HOM

2015-02-07 16:20:53 2206

转载 API 与 ABI 的具体含义

API都明白什么意思,最近总看到ABI,不太明白意思,搜一搜,原来如此!转至http://blog.chinaunix.net/uid-14735472-id-111116.htmlapi 是应用程序和操作系统之间的接口,凡是符合该api标准的应用程序都可以在支持该api的操作系统上编译通过。abi 是二进制级别的接口,规定了二进制文件的格式、内容、装载/卸载程

2015-01-14 11:38:09 2972

原创 如何提交Code到google open source android gerrit

讲述如何提交修改到android Gerrit让google的开发者进行review并merge,详细讲解各个步骤以及注意点。

2015-01-08 14:13:03 4284

转载 Uiautomator Api浅析

最近在处理CTS问题时会遇到一些UiAutoMator相关的API,搜集资料记录。转至http://blog.sina.com.cn/s/blog_ae2575ff01018b2o.html从android sdk api 16开始,Android SDK开始支持两个做功能UI测试的新工具。uiautomatorviewer,一个用以扫描以及分析Android应用程序的

2015-01-07 15:49:50 976

转载 Java Debug小技巧记录

Java Debug

2015-01-01 17:15:45 957

原创 通过Android manifest中的sharedUserId属性的设置来实现apk之间的资源共享

主要描述sharedUserId的设置,工作原理,以及运用该属性如何实现APK之间的资源共享。

2014-12-30 15:33:08 5520

转载 xmlns是什么意思

在AndroidManifest.xml中的manifest节点中会有xmlns这个属性,web开发中也会经常遇到,bing搜了一下,记录如下:转至http://blog.163.com/enzochan1@126/blog/static/128052475201093102434857/做WEB页面的人经常会碰到形如这样的代码,那后面的xmlns是表示什么意思呢? 官

2014-12-30 11:23:56 3595

原创 Android SDK PDK NDK详解

昨天一个同事问我Android PDK,NDK,SDK都是做什么的,什么意思。之前听到过这几个词,感觉自己能够理解,但是发现要比较清晰的给她解释才发现自己的理解可能还不是很到位,带着疑问查了查资料,结合自己的理解写下来。其实这个三个词应该是在软件开发领域通用的,它们的全称分别为SDK(Software Development Kit),PDK(PlatformDevelopment

2014-12-18 17:43:34 6902

转载 FLAG_ACTIVITY_NEW_TASK标记 以及taskAffinity属性

转至http://www.eoeandroid.com/blog-572991-876.html?_dsign=da0f1422,感谢原作者~FLAG_ACTIVITY_NEW_TASK标记当传递给startActivity()的Intent对象包含FLAG_ACTIVITY_NEW_TASK标记时,系统会为需要启动的activity寻找与当前activity不同的task。如果要

2014-12-17 15:56:10 893

原创 Android Framework中新加res资源方式

Android Framework添加res以及在framework中新添加模块如何使用framework-res.apk中的现有资源。

2014-12-16 16:17:23 6544

转载 Android通过共享用户ID来实现多个Activity进程共享

转载至http://www.cnblogs.com/gansc23/archive/2011/01/21/1941134.html最近在项目上遇到一些两个APK进程之间互相访问数据的问题,查阅资料时发现这篇文章对于不同APK之间多个Activity的运行状态的分析比较详细,就拖到自己的博客空间,做个记录,也共享给CSDN的亲们。通过共享用户ID来实现多个应用程序使用同一

2014-12-16 14:27:40 714

原创 Android 自定义theme

Android的Theme个人理解其实就像是网页中的CSS,甚至连标签的名字都感觉是一样的,如style标签。通常在APK开发的过程中,对UI/UE设计好的UI界面进行实现一定会用到styles, 看有的博客上写到style和theme,其实无论是style还是theme都是对view控件的显示属性进行控制,区别在于影响范围的大小,Theme针对的是Application,Activi

2014-12-11 15:25:19 1959

转载 ClassLoader入门理解

最近项目上遇到一些需要理解ClassLoader才能够解决的问题,因此搜索了一些关于ClassLoader的资料,以我这个对ClassLoader一点不太了解的入门者的角度来看,这篇帖子讲解得挺好,对ClassLoader的理解挺有用,分享给大家,原帖地址:http://www.iteye.com/topic/83978============================帖子原内容

2014-11-27 14:35:52 626

原创 ubuntu12.04将当前终端的jdk环境临时切换到jdk1.7

Android5.0需要用jdk1.7来进行编译,而

2014-11-17 13:51:31 717

原创 Android WebView Study

最近刚拿到android 4.4的code,发现4.4的webview的实现已经转向chromium的webview,其中原来的webview对应的是chromium中的content下面的ContentView,这几天一直在纠结应该怎么来学习这个webview,以及之后的webview topic应该怎么来进行,主题是什么。刚一直在想webview是个什么,其实想通了,说白了,webview就是

2013-12-05 15:45:26 1316 2

原创 Android 4.4 webview 架构

通过这两天对4.4 webview的调研发现,4.4 google已经将android原来的webview主要实现都去掉了,但是作为系统级的frameworks,要考虑到向后兼容,API是不能随便乱动的,所以framework/base下面webview中留下了提供给上层接口的一些类文件。   对Anrdoid webview实现取而代之的是chromium项目的webview,通

2013-11-28 09:27:44 5324 7

How to write makefile

主要讲解makefile如何书写,以及make命令的一些隐性规则等内容,对于入门makefile的书写比较有作用。

2014-11-14

深入理解android.pdf

深入理解android.pdf 卷一,有需要的可以下载看看,

2013-07-17

pro git英文版

讲述git不错的一本书,英文原版能避免一些中文翻译时的错误,建议看看

2012-10-23

空空如也

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

TA关注的人

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