自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android加密算法

基本需求及概念随着Internet网的广泛应用,信息安全问题日益突出,以数据加密技术为核心的信息安全技术也得到了极大的发展。目前的数据加密技术根据加密密钥类型可分私钥加密(对称加密)系统和公钥加密(非对称加密)系统。对称加密算法是较传统的加密体制,通信双方在加/解密过程中使用他们共享的单一密钥,鉴于其算法简单和加密速度快的优点,目前仍然是主流的密码体制之一。最常用的对称密码算法是数据加密标准(DES

2016-04-18 14:31:25 8393 7

转载 xUtils3简介

转载:https://github.com/wyouflf/xUtils3

2016-04-14 11:07:46 470

转载 Android ProGuard代码混淆

转:http://blog.csdn.net/hanhailong726188/article/details/50421991 简介Proguard工具通过移除无用的代码以及使用语义隐晦的名称来重命名类、字段和方法,从而达到压缩、优化和混淆代码的目的。最终您将获得一个较小的 .apk 文件,此文件更难于进行反向工程。由于 ProGuard 会使应用更难于进行反向工程,因此当应用使用对安全性要求极

2016-04-12 17:26:36 442

转载 Android Rxjava和retrofit

如果你对RxJava不熟悉请先看 http://gank.io/post/560e15be2dca930e00da1083如果你对Retrofit不熟悉就先看Retrofit官网 http://square.github.io/retrofit/接下来进入正文,我是从下面几个角度去思考RxJava与Retrofit结合的。 1、RxJava如何与Retrofit结合 2、相同格式的Http请求数

2016-04-12 17:11:55 1176

原创 对MVC、MVP、MVVM的理解

三种模式的结构。 MVC:Model-View-Controller MVP:Model-View-Presenter MVVM:Model-View-ViewMode三者的共同点,也就是Model和View Model就是领域模型,数据对象,同时,提供外部对应用程序数据的操作的接口,也可能在数据变化时发出变更通知。Model不依赖于View的实现,只要外部程序调用Model的接口就能够实现

2016-04-12 16:21:06 880

原创 android 动画详解(二)

下面就开始学习属性动画的基本用法,我们来看属性动画的继承关系,如下如所示: 显然关注的焦点应该是ValueAnimator,ObjectAnimator这两个类啦,ObjectAnimator继承自ValueAnimator,是属性动画中非常重要的一个实现类,通过ObjectAnimator类的静态欧工厂方法来创建ObjectAnimator对象,这些静态工厂方法包括:ObjectAnimator

2016-04-12 15:21:23 1988

原创 Android 动画详解(一)

android中动画分为3种Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画; Frame Animation:顺序播放事先做好的图像,是一种画面转换动画。 Property Animation:属性动画,通过动态地改变对象的属性从而达到动画效果,属性动画为API 11新特性 今天我们先讲Tween Animation;  T

2016-04-12 11:56:47 364

原创 Android View面试难点解析

1.View的绘制流程分几步,从哪开始?哪个过程结束以后能看到view?答:从ViewRoot的performTraversals开始,经过measure,layout,draw 三个流程。draw流程结束以后就可以在屏幕上看到view了2.view的测量宽高和实际宽高有区别吗?答:基本上百分之99的情况下都是可以认为没有区别的。有两种情况,有区别。第一种 就是有的时候会因为某些原因 view会多次

2016-04-11 14:09:38 3643 2

原创 Java中抽象类和接口的区别详解

在 JAVA语言中, abstract class 和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是

2016-04-11 10:12:21 283

原创 java io流详解

我们先说一下File类,毕竟io都是针对File来着。构造函数 File(String pathname) File f1 =new File("c:\\abc\\1.txt"); //File(String parent,String child) File f2 =new File("c:\\abc","2.txt");

2016-04-08 13:33:51 595 2

原创 Android自定义控件来袭(Scroller)

先看看效果图 实现方法继承自ViewGroup需要我们自己来测量,布局,实现滑动的效果,处理滑动冲突, 自定义ViewGroup的一般思路是重写onMeasure方法,在onMeasure方法中调用measureChild来测量子View,然后调用setMeasuredDimension来测量自己的大小。然后重写onLayout方法,在onLayout中调用子View的layout方法来确定

2016-04-07 17:42:05 3250 4

原创 Java反射机制

一、什么是反射机制 简单的来说,反射机制指的是程序在运行时能够获取自身的信息。在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息。 二、JAVA反射机制主要提供了以下功能: 1.在运行时判断任意一个对象所属的类 2.在运行时构造任意一个类的对象 3.在运行时判断任意一个类所具有的成员变量和方法(通过

2016-04-07 13:34:50 274

原创 Java泛型

什么是泛型? 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。看着好像有点复杂,首先我们看采用泛型的写法。1 public class GenericTest {

2016-04-07 10:48:13 246

原创 Java注释详解

从java 5.0开始,为我们提供注解功能,通过注解可以限制代码的重载,过时,以及实现一些其他功能,这里,就来分析一下java的注解。下面看张图: 这张图已经表示的灰常清楚了下面我们一一解释。首先来看java元注解,分别是:@Target@Retention@Documented@Inherited这些注解和他们所修饰的类在java.lang.annotation包中,代码都很简单,可以

2016-04-07 10:08:50 427

原创 深入解析HashMap、HashTable,ArrayList

Java集合类是个非常重要的知识点,HashMap、HashTable、ConcurrentHashMap等算是集合类中的重点,可谓“重中之重”,首先来看个问题,如面试官问你:HashMap和HashTable有什么区别,一个比较简单的回答是: 1、HashMap是非线程安全的,HashTable是线程安全的。 2、HashMap的键和值都允许有null值存在,而HashTable则不行。 3

2016-04-06 23:48:39 1511 2

原创 java 集合详解

一、集合类简介 数组是很常用的一种的数据结构,我们用它可以满足很多的功能,但是,有时我们会遇到如下这样的问题: 1、我们需要该容器的长度是不确定的。 2、我们需要它能自动排序。 3、我们需要存储以键值对方式存在的数据。 如果遇到上述的情况,数组是很难满足需求的,接下来本章将介绍另一种与数组类似的数据结构——集合类,集合类在Java中有很重要的意义,保存临时数据,管理对象,泛型,Web框架等

2016-04-06 23:17:11 392

原创 View加载详解(二)

上篇我们讲到了ViewRootImpl的performTraversals方法performMeasure测量之前要通过getRootMeasureSpec方法获得顶层视图DecorView的测量规格,跟踪代码进入getRootMeasureSpec()/** * Figures out the measure spec for the root view in a window base

2016-04-06 19:59:44 391

原创 View加载详解(一)

现在我们接着上一篇文章继续往下讲layoutInflat.inflater 那么inflate方法里面具体做了什么?跟踪代码,该方法的实现是在LayoutInflater类中。 public View inflate(int resource, ViewGroup root) { return inflate(resource, root, root != null); }

2016-04-06 14:58:50 491

转载 Java 8 Lambda 表达式(一)

配置环境buildscript { repositories { mavenCentral() } dependencies { classpath 'me.tatarka:gradle-retrolambda:3.2.3' } } // Required because retrolambda is on maven central

2016-04-06 11:31:13 388

原创 View加载详解

文章一开始我要对前面一篇文章做点补充 相信大家都知道View有两个方法。 public boolean post(Runnable action) public boolean postDelayed(Runnable action, long delayMillis) {这两个方法也可以实现对View的包装(实现延时发送消息和更新UI)那么它和Handler有什么区别呢下面给出源码。/**

2016-04-06 10:07:22 1257

原创 文章标题 java网络详解

¯网络基本概念 网络体系结构:国际标准化组织ISO于l978年提出“开放系统互连参考模型”,即著名的OSI(Open System Interconnection)模型。 该模型把计算机网络分成物理层、数据链路层、网络层、传输层、会话层、表示层、应用层等七层。 至于各个层的具体描述在此省略InetAddress InetAddress类是Java中用于描述IP地址的类。它在java.ne

2016-04-05 22:25:24 545

原创 文章标题 adb常用命令

adb 常用命令大全 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd –name 名称 –target 平台编号 4. 启动模拟器: emulator -avd 名称 -sdc

2016-04-05 14:39:50 417

原创 带你从源码的角度去理解Handler

一、概述 Handler 、 Looper 、Message 这三者都与Android异步消息处理线程相关的概念。那么什么叫异步消息处理线程呢? 异步消息处理线程启动后会进入一个无限的循环体之中,每循环一次,从其内部的消息队列中取出一个消息,然后回调相应的消息处理函数,执行完成一个消息后则继续循环。若消息队列为空,线程则会阻塞等待。 说了这一堆,那么和Handler 、 Looper 、Mes

2016-04-05 14:32:45 862 5

转载 文章标题 java线程详解

一、操作系统中线程和进程的概念 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。 线程是指进程中的一个执行流程,一个进程中可以运行多个线程。比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存 二、Java中的线程 使用java.lang.Thread类或者java.lang.Runnable接口编

2016-04-05 10:57:39 792

Android的开发详细网络

Android的开发已经称为一种潮流好好学习Android的开发已经是一种趋势

2015-03-27

空空如也

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

TA关注的人

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