- 博客(132)
- 资源 (12)
- 收藏
- 关注
原创 JDK中的proxy动态代理原理剖析
主要API类是:Proxy.newProxyInstancepublic static Object newProxyInstance(ClassLoader loader, Class[] interfaces, Invocation
2017-03-16 22:05:05
819
原创 Android AOP 总结
AndroidAOP 总结一、AOP1.1 什么是AOPAOP,AspectOriented Programming 面向切面编程OOP,Object-orientedprogramming面向对象编程AOP和OOP是不同的编程思想。OOP强调的是高内聚,低耦合,封装。提倡的是将功能模块化,对象化。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统
2017-03-16 21:24:45
3114
原创 查看MAT中的bitmap
2中方式查看MAT中的bitmap。第一种,用gimp工具查看第二种,用ImageMagick Display的convert 命令亲测2种都可用。第一种。gimp 查看。下载gimp工具。 https://www.gimp.org/下载完后,安装。用MAT查看.hprof 的内存文件,找到bitmap展开bitmap对象。找到mButtfer。右键。选择cop
2016-04-25 12:04:58
4797
原创 JDK中的proxy动态代理
动态代理的原理:1. proxy0继承Proxy,实现IPackageManager 接口,需要传入 InvocationHandler,初始化对应的h对象。2. 我们的h对象就是PackageManagerWoker,所以我们会调用到PackageManagerWoker的 invoke方法。3. 所以是proxy0,调用InvocationHandler的 invoke 方法,传入对应的方法。InvocationHandler 放射调用对应的tagret中的方法。套了2层。
2016-03-15 22:01:58
5982
转载 Android运行时ART简要介绍和学习计划
原文出处: 罗升阳的博客(@罗升阳) ART的发布之所以引起大家的关注,是因为Andoid与iOS相比,一直被人诟病它的流畅性。Android的流畅性问题,有一部分原因就归结于它的应用程序和部分系统服务是运行虚拟机之上的,也就是运行在Dalvik虚拟机之上,而iOS的应用程序和系统服务都是直接执行本地机器指令的。除了使用ART替换Dalvik之外,我们也应当看到,Android
2015-07-17 10:20:37
839
翻译 Android Lollipop新特性
Welcome to Android 5.0 Lollipop—thelargest and most ambitious release for Android yet!欢迎来到Android 5.0Lollipop-the最大、最雄心勃勃的Android版本!This release is packed with newfeatures for users and thousands
2014-10-20 17:26:50
5166
原创 解决Android数据库锁的问题
产生数据库锁的原因,就是因为多个SQLiteOpenHelper,多数据库操作,导致读写竞争。数据库被锁住1 对一个数据库操作只创建1个SQLiteOpenHelper。最好保存一个全局的SQLiteOpenHelper,用单例实现。退出进程的时候,再清空单例2 多进程操作数据库,使用ContentProvider,且声明成android:multiprocess="false"。
2014-10-15 17:46:34
5345
原创 Android签名介绍
Android签名介绍证书指纹获取证书指纹使用google map api 或者 百度lbs api 需要提交apk 的证书指纹,百度和google 提供的方法如下:1、> keytool –list –v –keystore d:\debug.keystore debug签名密码为 android 2、通过eclipse 获取
2014-10-14 16:38:17
930
原创 MeasureSpec介绍及使用详解
一个MeasureSpec封装了父布局传递给子布局的布局要求,每个MeasureSpec代表了一组宽度和高度的要求。一个MeasureSpec由大小和模式组成。它有三种模式:UNSPECIFIED(未指定),父元素部队自元素施加任何束缚,子元素可以得到任意想要的大小;EXACTLY(完全),父元素决定自元素的确切大小,子元素将被限定在给定的边界里而忽略它本身大小;AT_MOST(至多),子元素至多
2014-04-05 16:05:03
4812
转载 开源库android-async-http添加https请求方式
这几天由于项目要求将http转换成https请求,要求不做证书验证。而我使用的是loopj的开源库android-async-http来完成服务器请求,但是此库并未有相关https的示例,故自己动手丰衣足食。经过一番摸索,现记录如下:封装了一个httpclient帮助类,以此获取一个DefaultHttpClient的示例对象。import java.io.IOException;i
2014-03-21 18:45:33
13694
1
原创 XMPP资料整理
XMPP(ExtensibleMessageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM(IM:instant messaging,即时消息)协议之一,其他三种分别为:即时信息和空间协议(IMPP)、空间和即时信息协议(PRIM)、针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)。 在这四种协议中,XMPP是最灵活的。XMPP
2014-03-08 16:33:29
1099
转载 ByteBuffer
在NIO中,数据的读写操作始终是与缓冲区相关联的.读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区.缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方法只接收ByteBuffer.因此ByteBuffer的用法是有必要牢固掌握的.1.创建Byt
2014-02-19 16:43:07
919
原创 使用非阻塞ServerSocketChannel、SocketChannel代替ServerSocket和Socket
在使用传统的ServerSocket和Socket的时候 很多时候程序是会阻塞的比如 serversocket.accept() , socket.getInputStream().read() 的时候都会阻塞 accept()方法除非等到客户端socket的连接或者被异常中断 否则会一直等待下去read()方法也是如此 除非在输入流中有了足够的数据 否则该方法也会一直等待下去知道
2014-02-19 12:03:38
926
原创 Android 3D旋转动画——Rotate3dAnimation
在Android中如果想要实现3D效果一般有两种选择,一是使用Open GL ES,二是使用Camera。Open GL ES使用起来太过复杂,一般是用于比较高级的3D特效或游戏,像比较简单的一些3D效果,使用Camera就足够了。Camera中提供了三种旋转方法,分别是rotateX()、rotateY()和rotateZ,调用这三个方法,并传入相应的角度,就可以让视图围绕这三个轴进
2014-02-10 16:45:02
24491
转载 Fiddler跟踪监控android数据包
Fiddler 是通过代理来实现数据捕获的。对 Android 手机来说,也是通过将网络连接的代理指向 PC 机的 Fiddler 端口,来实现数据包的拦截。 下面,我以我的一次实践为例,向大家介绍如何操作。 环境:Windows7、G11(android 4.0.3) 1、首先,确保安装 Fiddler 的电脑和手机在同一局域网内,因
2014-02-10 11:24:43
1345
转载 Fiddler 教程
原文:Fiddler 教程Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大的帮助。阅读目录Fiddler的基本介绍Fiddler的工作原理同类的其它工具Fiddler如何捕获Firefox的会话Firefox 中使用Fi
2014-02-10 11:19:14
874
原创 FTP命令列表
命令描述ABOR(ABORT)此命令使服务器终止前一个FTP服务命令以及任何相关数据传输。ACCT(ACCOUNT)此命令的参数部分使用一个Telnet字符串来指明用户的账户。ADAT(AUTHENTICATION/SECURITY DATA)认证/安全数据ALLO为接收一个文件分配足够的磁盘空间APPE增加
2013-12-20 17:13:25
9223
原创 Java对象的强、软、弱和虚引用
Java对象的强、软、弱和虚引用:http://java.chinaitlab.com/oop/716371.html简单理解Java GC与幽灵引用:http://developer.51cto.com/art/200906/128189.htm
2013-12-17 20:53:19
797
转载 Android Memory Management
原文:http://my.eoe.cn/futurexiong/archive/1299.html本文整理自Google I/O 2011: Memory management for Android Apps的演讲,需自行到墙外查看。从早期G1的192MB RAM开始,到现在动辄1G -2G RAM的设备,为单个App分配的内存从16MB到48MB甚至更多,但OOM从不曾离我们远
2013-12-17 20:50:17
819
转载 如何分析解决Android ANR
原文:http://my.eoe.cn/967832/archive/10683.html一:什么是ANRANR:Application Not Responding,即应用无响应二:ANR的类型ANR一般有三种类型:1:KeyDispatchTimeout(5 seconds) --主要类型按键或触摸事件在特定时间内无响应2:BroadcastTimeout(10
2013-12-17 20:49:03
16690
1
转载 Java中的DatagramPacket与DatagramSocket的初步
最近很忙,只能转载了http://sunspot.blog.51cto.com/372554/130313
2013-11-13 17:12:35
689
原创 Android NDK开发指南---Application.mk文件
原文:Android NDK开发指南---Application.mk文件http://hualang.iteye.com/category/167660Application.mk文件简介:-----------------------------要将C\C++代码编译为SO文件,光有Android.mk文件还不行,还需要一个Application.mk文件。本文
2013-10-09 16:31:02
791
原创 java多线程系列
Java多线程系列学习,不是自己写的,觉得别人写得很不错,记录一下:Java多线程(一)之volatile深入分析Java多线程(二)之Atomic:原子变量与原子类Java多线程(三)之ConcurrentHashMap深入分析Java多线程(四)之ConcurrentSkipListMap深入分析Java多线程(五)之BlockingQueue深入分析Java多线程
2013-10-09 15:25:38
1407
转载 android 使用开源工具ChkBugReport分析Bugreport
原文:http://www.androidlearner.net/using-chkbugreport-analysis-bugreport.html一、ChkBugReport介绍ChkBugReport是一个开源工具,它可以把你得到的bugreprot解析成适合阅读的html文件。导出的html文件包含了根据bugreport数据得出的图表和分析结论。它的源码中用到了以下开
2013-10-09 14:39:25
16002
转载 【Head First设计模式】-Decorator模式
原文:http://www.blogjava.net/sterning/archive/2008/01/21/176679.html一、要完成的任务星巴兹(Starbuzz)是以扩张速度最快而闻名的咖啡连锁店。如果你在街角看到它的店,在对面街上肯定还会看到另一家。因为扩张速度实在太快了,他们准备更新订单系统,以合乎他们的饮料供应要求。他们原先的类设计是这样的…… 购买咖啡时,也
2013-10-09 11:22:21
1336
转载 BlockingQueue
一、概述:BlockingQueue作为线程容器,可以为线程同步提供有力的保障。二、BlockingQueue定义的常用方法1.BlockingQueue定义的常用方法如下: 抛出异常特殊值阻塞超时插入add(e)offer(e)put(e)offer(e
2013-09-25 11:44:37
1157
转载 Force Download with HTTP Headers
原文地址:http://www.symkat.com/force-download-with-http-headersModern web browsers support a plethora of plugins to allow content to be displayed inline; once upon a time your mp3 and pdf files would
2013-09-11 21:07:49
1609
原创 全零网络IP地址0.0.0.0表示意义详谈
RFC:0.0.0.0/8 - Addresses in this block refer to source hosts on "this"network. Address 0.0.0.0/32 may be used as a source address for thishost on this network; other addresses within 0.0.0.0/
2013-09-06 13:44:38
3238
原创 Java Process中waitFor()
在编写Java程序时,有时候我们需要调用其他的诸如exe,shell这样的程序或脚本。在Java中提供了两种方法来启动其他程序: (1) 使用Runtime的exec()方法 (2) 使用ProcessBuilder的start()方法 。Runtime和ProcessBulider提供了不同的方式来启动程序,设置启动参数、环境变量和工作目录。但是这两种方法都会返回一个用于管理操作系统进程的Pro
2013-09-04 21:43:13
4357
原创 HTTP Header 详解
HTTP(HyperTextTransferProtocol)即超文本传输协议,目前网页传输的的通用协议。HTTP协议采用了请求/响应模型,浏览器或其他客户端发出请求,服务器给与响应。就整个网络资源传输而言,包括message-header和message-body两部分。首先传递message- header,即http header消息 。http header 消息通常被分为4个部分:g
2013-09-02 20:29:41
866
原创 Etag和Expires
Etag和Expires题记:本文对页面中Etag和Expires标识处理,使得页面更加有效被Cache。摘要1、Etag和Expires中Client 端Http Request Header及Server端Http Reponse Header工作原理。2、静态下Apache、Lighttpd和Nginx中Etag和Expires配置3、非实时交互动态页面中Etag
2013-09-02 20:17:31
1146
转载 HTTP Header中的ETag
原文参考百度百科:http://baike.baidu.com/view/3039264.htm概念Etag[1] 是URL的Entity Tag,用于标示URL对象是否改变,区分不同语言和Session等等。具体内部含义是使服务器控制的,就像Cookie那样。HTTP协议规格说明定义ETag为“被请求变量的实体值”。另一种说法是,ETag是一个可以与Web资源关联的记
2013-09-02 20:14:55
14217
转载 关于Android UI组件LinearLayout属性layout_weight与layout_width/height的问题
原文地址:http://hi.baidu.com/wei_chou/item/04b51be1abb1e316595dd853在网上搜索了很多关于layout_weight的文章,众说纷纭,且都不准确。后来自己动手测试,通过分析计算得出以下结论:1、如果LinearLayout在其子组件相应排列方向上的大小值(layout_width/height)为wrap_content,
2013-09-02 14:19:19
2874
转载 使用静态内部类提高封装性
原文链接:http://book.51cto.com/art/201202/317517.htmJava中的嵌套类(Nested Class)分为两种:静态内部类(也叫静态嵌套类,Static Nested Class)和内部类(Inner Class)。内部类我们介绍过很多了,现在来看看静态内部类。什么是静态内部类呢?是内部类,并且是静态(static修饰)的即为静态内部类。只有在是静态
2013-08-28 16:54:20
1144
转载 Android 之ActivityThead、ActivityManagerService 与activity的管理和创建
原文地址:http://blog.youkuaiyun.com/xieqibao/article/details/6570080在android中,Activity是四大组件中比较重要的一个(当然其他的也比较重要),那么android中是怎样管理这些activity的?应用的进程和主线程是怎么创建的,应用的消息循环又是在什么时候创建的?在这篇文章中将详细介绍: 先来看下涉及到的类,通过
2013-06-27 18:13:52
805
转载 Android SDCard Mount 流程分析
原文:http://www.cnblogs.com/TerryBlog/archive/2012/04/05/2432818.html 本篇大纲android 系统如何开机启动监听mount服务默认设备节点在Android 系统的哪个目录vold.fstab 配置文件的分析 vold 里面启动页面main做了些什么android 系统如何开机启动监听mount服务
2013-06-26 17:35:59
1369
转载 External Storage Technical Information
原文链接:http://source.android.com/tech/storage/Android supports devices with external storage, which is defined to be a case-insensitive and permissionless filesystem. External storage can be provide
2013-06-26 17:30:16
1950
转载 Virtual SD card on Android
原文链接:http://android-revolution-hd.blogspot.com/2013/03/virtual-sd-card-on-android.html (需要翻墙访问)Since Android Honeycomb, Google changed the way to manage internal memory on Android devices. Befor
2013-06-26 16:06:49
2648
原创 开源代码的学习
图片内存管理:Android-Universal-Image-LoaderpicassoListView的优化:swipelistviewDragSortListView数据库:GreenDAO动画:android-misc-widgetsNineOldAndroids
2013-06-24 17:42:09
779
转载 Java 中的堆和栈
Java 中的堆和栈 堆栈的简介Java把内存划分成两种:一种是栈内存,一种是堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配 。 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存空间可以立即被另作他用。 堆内存用来存放由 new创建的对象和数
2013-04-28 17:38:39
714
liunx通过RPM安装gcc
2011-04-27
struts2 开发BBS论坛源码
2010-11-25
J2EE项目实训——Struct框架技术.rar
2010-05-03
J2EE项目实训——Spring框架技术.rar
2010-05-03
软件工程实践者的研究方法.pdf
2010-02-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人