自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 收藏
  • 关注

转载 Android 自定义控件 轻松实现360软件详情页

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43649913,本文出自:【张鸿洋的博客】1、概述最近有不少朋友私聊问应用宝、360软件助手之类的软件详情页怎么做,刚好,最近有时间就模仿360软件助手详情页

2015-12-31 22:39:59 496

转载 TCP粘包

这两天看csdn有一些关于socket粘包,socket缓冲区设置的问题,发现自己不是很清楚,所以查资料了解记录一下: 一 .两个简单概念长连接与短连接:1.长连接    Client方与Server方先建立通讯连接,连接建立后不断开, 然后再进行报文发送和接收。2.短连接    Client方与Server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即

2015-12-28 21:15:50 329

转载 Java并发知识——Concurrent包

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]什么是原子操作? Java Concurrency API中有哪些原子操作类?原子操作是执行单个任务单元的操作,这个操作不需要干扰其他操作,可以理解为当前情况下不可再分的操作,远在操作是多线程环境下避免数据不一致而存在的必需品。int++就不是原子操作,如果一个线程读

2015-12-28 21:13:57 2759

转载 scrollTo与scrollBy

版权声明:本文为博主原创文章,未经博主允许不得转载。                                                                              本文原创 ,转载必须注明出处 :http://blog.csdn.net/qinjuning                                  

2015-12-28 16:16:57 309

转载 Scroller类

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]在android学习中,动作交互是软件中重要的一部分,其中的Scroller就是提供了拖动效果的类,在网上,比如说一些Launcher实现滑屏都可以通过这个类去实现。。例子相关博文:Android 仿 窗帘效果 和 登录界面拖动效果 (Scroller类的应用) 附 2个DEMO

2015-12-28 16:14:59 212

转载 Handler可能导致的内存泄露及其优化

版权声明:本文为博主原创文章,未经博主允许不得转载。[java] view plaincopypackage cc.cc;    import java.lang.ref.WeakReference;  import android.os.Bundle;  import android.os.Handler;  impor

2015-12-27 09:57:56 469

转载 AsyncHttpClient

1.简介Android中网络请求一般使用Apache HTTP Client或者采用HttpURLConnect,但是直接使用这两个类库需要写大量的代码才能完成网络post和get请求,而使用android-async-http这个库可以大大的简化操作,它是基于Apache’s HttpClient ,所有的请求都是独立在UI主线程之外,通过回调方法处理请求结果,采用android  Ha

2015-12-26 20:18:59 286

转载 Ping过程

Ping命令的主要作用的是检查网络的连通情况和检测网络的速度。相信大家都用过Ping命令,下面主要介绍一下Ping命令是怎样一个执行过程。         主要的Ping有两种情况,一种是同一网段,一种是跨网段的。         首先看一个拓扑图:首先,如果主机A要Ping主机B,那么主机A就要封装二层报文,他会先检查自己的MAC地址,如果没有B的MAC地址,就会

2015-12-25 17:21:32 500

转载 Session和Cookie

cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。同时我们也看到,由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的,但实际上它还有其他选择。    cookie机制。正统的cookie分发是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行

2015-12-25 17:16:35 272

转载 ICMP

网际控制消息协议ICMP是一个网络层的协议,它提供了错误报告和其它回送给源点的关于 IP 数据包处理情况的消息。ICMP通常为IP层或者更高层协议使用,一些ICMP报文把差错报文返回给用户进程。ICMP报文通常被封装在IP数据包内传输。RFC 792 中有关于ICMP的详细说明。ICMP包含几种不同的消息,其中ping程序借助于echo request消息,主机可通过它来测试网络的可达

2015-12-25 16:55:53 113

转载 Zygote的启动过程

Launcher启动过程            系统中的应用程序安装好了以后,SystemServer组件接下来就通过ActivityManagerService来启动Home应用程序Launcher了,Launcher在启动的时候便会通过PackageManagerServic把系统中已经安装好的应用程序以快捷图标的形式展示在桌面上,这样用户就可以使用这些应用程序了,

2015-12-23 20:34:09 457

转载 静态分派和动态分派

首先是两个概念:静态类型,即是变量声明时的类型实际类型,变量实例化时采用的类型比如我们有这样一段代码class Human {}public class Man extends Human { public static void main(String[] args) { Human man = new Man(); }}我们就称变

2015-12-23 15:50:51 1458

转载 对象创建、内存分配、访问

对象访问会涉及到Java栈、Java堆、方法区这三个内存区域。如下面这句代码:Object objectRef = newObject();       假设这句代码出现在方法体中,"Object objectRef” 这部分将会反映到Java栈的本地变量中,作为一个reference类

2015-12-23 15:33:04 1280

转载 GC收集器

如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。Java虚拟机规范中对象垃圾收集器应该如何实现并没有任何规定,因此不同的厂商,不同版本的虚拟机所提供的收集器可能会有很的差别,并且一般会提供参数供用户根据自己的应用特点和要求组合出各个年代所使用的收集器。下面是Sun HotSpot虚拟机1.6版本Update22包含的所有收集器:上图中,如果两个收集器之间存在连线

2015-12-23 15:11:37 387

转载 JVM内存区域

图一:java内存结构划分由上图可知,java内存主要分为6部分,分别是 程序计数器,虚拟机栈,本地方法栈,堆,方法区和直接内存 ,下面将逐一详细描述。1、程序计数器线程私有 ,即每个线程都会有一个,线程之间互不影响,独立存储。    代表着当前线程所执行字节码的行号指示器。2、虚拟机栈线程私有 , 它的生命周期和线程相同 。描述的是 jav

2015-12-23 15:08:54 274

转载 内存管理和GC算法以及回收策略

内存管理和垃圾回收JVM内存组成结构JVM栈由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示:   JVM内存回收 Sun的JVMGenerationalCollecting(垃圾回收)原理是这样的:把对象分为年青代(Young)、年老代(Tenured)、持久代(Perm),对不同生命周期的对象使用不同的算法。(基于对对象生命

2015-12-23 14:48:20 7387

转载 异常处理机制

Java 异常处理通过 5 个关键字 try、catch、throw、throws、finally 进行管理。基本过程是用 try 语句块包住要监视的语句,如果在 try 语句块内出现异常,则异常会被抛出,你的代码在 catch 语句块中可以捕获到这个异常并做处理;还有以部分系统生成的异常在 Java 运行时自动抛出。你也可以通过throws 关键字在方法上声明该方法要抛出异常,然

2015-12-23 09:57:18 355

转载 多线程及线程周期和多线程并发

多线程是 java 应用程序的一个特点, 掌握 java 的多线程也是作为一 java程序员必备的知识。多线程指的是在单个程序中可以同时运行多个同的线程执行不同的任务.线程是程序内的顺序控制流, 只能使用分配给序的资源和环境。 还记得刚开始学习的时候总是和进程分不清, 总是对这两个名词所迷惑。下面就首先对这两个名词区分来作为本篇博客的开始:一、线程与进程的区别多个进程的内部数据和状

2015-12-23 09:23:52 1289

原创 反射

Java 反射机制主要提供了以下功能:•在运行时判断任意一个对象所属的类。•在运行时构造任意一个类的对象。•在运行时判断任意一个类所具有的成员变量和方法。•在运行时调用任意一个对象的方法Java 程序可以加载一个运行时才得知名称的 class,获悉其完整构造(但不包括 methods 定义),并生成其对象实体、或对其 fields 设值、或唤起其methods。

2015-12-23 09:02:53 328

转载 JVM生命周期和类加载机制

一、java虚拟机的生命周期:  Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。 Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。在程序执行时,你必须给Java虚拟机指明这个包换main

2015-12-22 22:27:50 5280

转载 Binder详解

目录1. Android为何引入Binder2. 面向对象的 Binder IPC3. Binder通信模型3.1 Binder 驱动3.2 ServiceManager 与实名Binder3.3 Client 获得实名Binder的引用3.4 匿名 Binder4 Binder 协议4.1 BINDER_WRITE_READ:向Bind

2015-12-21 20:07:26 898

转载 ThreadLocal

ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是thread local variable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副

2015-12-21 16:10:34 334

转载 ThreadPool

new Thread的弊端如下:a. 每次new Thread新建对象性能差。b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。c. 缺乏更多功能,如定时执行、定期执行、线程中断。相比new Thread,Java提供的四种线程池的好处在于:a. 重用存在的线程,减少对象创建、消亡的开销,性能佳。b. 可有效控制最

2015-12-21 15:22:48 369

转载 SurfaceView

SurfaceViewView的绘图机制存在如下缺陷:View缺乏双缓冲机制View每次重绘的时候都会绘制所有组件新线程无法直接更新UI组件由于上述的几个缺陷,通过自定义的View来绘图性能底下,Android提供了一个SurfaceView来替代View,在游戏绘图方面表现的更加出色。由于View的绘图必须在当前UI下(这也是使用Handler更新View的原

2015-12-21 14:59:47 497

转载 Android ListView功能扩展,实现高性能的瀑布流布局

版权声明:本文出自郭霖的博客,转载必须注明出处。转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/46361889经过前面两篇文章的学习,我们已经对ListView进行了非常深层次的剖析,不仅了解了ListView的源码和它的工作原理,同时也将ListView中常见的一些问题进行了归纳和总结。那么本篇文章是我们Li

2015-12-19 09:45:50 292

转载 Thread与Service没有关系

不少Android初学者都可能会有这样的疑惑,Service和Thread到底有什么关系呢?什么时候应该用Service,什么时候又应该用Thread?答案可能会有点让你吃惊,因为Service和Thread之间没有任何关系!之所以有不少人会把它们联系起来,主要就是因为Service的后台概念。Thread我们大家都知道,是用于开启一个子线程,在这里去执行一些耗时操作就不会阻塞主线程的运行

2015-12-18 21:29:55 320

转载 Android 超高仿微信图片选择器 图片该这么加载

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/39943731,本文出自:【张鸿洋的博客】1、概述关于手机图片加载器,在当今像素随随便便破千万的时代,一张图片占据的内存都相当可观,作为高大尚程序猿的我们,有必要掌握

2015-12-18 21:19:37 497

转载 ListView具有多种item布局

版权声明:本文为博主原创文章,未经博主允许不得转载。       这篇文章的效果也是大家常见的,各种通讯应用的对话列表都是这种方式,像微信、whatsapp、易信、米聊等。我们这篇文章也权当为回忆,形成简单的笔记。这篇文章参考了2009年Google IO中的《TurboChargeYourUI-How to make your AndroidUI fast and effic

2015-12-18 20:42:34 389

转载 Android 快速开发系列 打造万能的ListView GridView 适配器

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38902805 ,本文出自【张鸿洋的博客】1、概述相信做Android开发的写得最多的就是ListView,GridView的适配器吧,记得以前开发一同事开发项目

2015-12-18 18:45:51 390

转载 LIFO和FIFO——Handler 异步消息处理机制的妙用 创建强大的图片加载类

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38476887 ,本文出自【张鸿洋的博客】最近创建了一个群,方便大家交流,群号:55032675上一篇博客介绍了Android异步消息处理机制,如果你还不了解

2015-12-18 14:47:33 2378

转载 Java 并发专题 :FutureTask 实现预加载数据 在线看电子书、浏览器浏览网页等

版权声明:本文为博主原创文章,未经博主允许不得转载。继续并发专题~FutureTask 有点类似Runnable,都可以通过Thread来启动,不过FutureTask可以返回执行完毕的数据,并且FutureTask的get方法支持阻塞。由于:FutureTask可以返回执行完毕的数据,并且FutureTask的get方法支持阻塞这两个特性,我们可以用来预先加载一些

2015-12-18 11:51:10 382

转载 Java 并发专题 : Semaphore 实现 互斥 与 连接池

版权声明:本文为博主原创文章,未经博主允许不得转载。继续并发方面的知识。今天介绍Semaphore,同样在java.util.concurrent包下。本来准备通过例子,从自己实现到最后使用并发工具实现,但是貌似效果并不是很好,有点太啰嗦的感觉,所有准备直入主题。介绍:Semaphore中管理着一组虚拟的许可,许可的初始数量可通过构造函数来指定【new Semaph

2015-12-18 11:38:50 284

转载 Android照片墙完整版,完美结合LruCache和DiskLruCache

版权声明:本文出自郭霖的博客,转载必须注明出处。转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/34093441在上一篇文章当中,我们学习了DiskLruCache的概念和基本用法,但仅仅是掌握理论知识显然是不够的,那么本篇文章我们就来继续进阶一下,看一看在实战当中应该怎样合理使用DiskLruCache。还不熟悉D

2015-12-18 11:03:54 252

转载 Android DiskLruCache完全解析,硬盘缓存的最佳方案

版权声明:本文出自郭霖的博客,转载必须注明出处。目录(?)[+]转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/28863651概述记得在很早之前,我有写过一篇文章Android高效加载大图、多图解决方案,有效避免程序OOM,这篇文章是翻译自Android Doc的,其中防止多图O

2015-12-18 10:49:41 230

转载 照片墙的Adapter——Android照片墙应用实现,再多的图片也不怕崩溃

照片墙这种功能现在应该算是挺常见了,在很多应用中你都可以经常看到照片墙的身影。它的设计思路其实也非常简单,用一个GridView控件当作“墙”,然后随着GridView的滚动将一张张照片贴在“墙”上,这些照片可以是手机本地中存储的,也可以是从网上下载的。制作类似于这种的功能的应用,有一个非常重要的问题需要考虑,就是图片资源何时应该释放。因为随着GridView的滚动,加载的图片可能会越来越多,如果

2015-12-18 10:23:49 1015

翻译 Bitmap.Options和LruCache——Android高效加载大图、多图解决方案,有效避免程序OOM

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9316683本篇文章主要内容来自于Android Doc,我翻译之后又做了些加工,英文好的朋友也可以直接去读原文。http://developer.android.com/training/displaying-bitmaps/index.html

2015-12-18 10:22:57 348

转载 Java并发编程:Callable、Future和FutureTask

Java并发编程:Callable、Future和FutureTask  在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。  这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。  如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。  而自从Jav

2015-12-16 08:57:45 283

转载 Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

1、概述众所周知,Activity在不明确指定屏幕方向和configChanges时,当用户旋转屏幕会重新启动。当然了,应对这种情况,Android给出了几种方案:a、如果是少量数据,可以通过onSaveInstanceState()和onRestoreInstanceState()进行保存与恢复。Android会在销毁你的Activity之前调用onSaveInstanc

2015-12-14 22:12:48 300

转载 fragment简介及你应该知道的一切

Fragment(片段,碎片),正如其翻译那样,它在一个activity里面表示一个行为或者用户接口的一部分(碎片表示轻量级和灵活)。我们可以将不同的Fragments组合起来放到一个activity中,或者在不同的activity中重用一个fragment。你可以将一个fragment看成是一个activity中的一个片段,它有自己的生命周期(如何从创建到销毁),接受它自己的输入事件,并且可以在

2015-12-14 19:48:44 1337

转载 AIDL

在Android中, 每个应用程序都有自己的进程,当需要在不同的进程之间传递对象时,该如何实现呢? 显然, Java中是不支持跨进程内存共享的。因此要传递对象, 需要把对象解析成操作系统能够理解的数据格式, 以达到跨界对象访问的目的。在JavaEE中,采用RMI通过序列化传递对象。在Android中, 则采用AIDL(Android Interface Definition Language:

2015-12-13 15:05:05 281

空空如也

空空如也

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

TA关注的人

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