自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 java synchronized

1、synchronized语句块锁的事显式的对象 2、实例方法锁的式当前实例 3、静态方法锁的是类加载器中的java.lang.class对象

2015-03-31 00:18:13 634

原创 Android Touch事件分发机制

在app开发过程中常常需要订制控件处理Touch事件。本文介绍Android应用层是分发Touch事件的机制。         整体来说Touch事件的分发遵从“V”字形结构

2014-01-15 17:59:34 544

转载 android设备信息获取

TelephonyManager实例的获取需要READ_PHONE_STATE权限。具体函数如下: getCellLocation() 返回的单元格位置的装置 ACCESS_COARSE_LOCATION或ACCESS_FINE_LOCATION getDeviceId() 返回的IMEI / MEID的设备。 如果该设备是GSM设备然后IMEI号将被退回,如果该设备是一个CDMA设备

2014-01-13 15:04:38 563

原创 Android性能优化

一、布局优化  1 延迟布局或空间的加载时间。根据业务逻辑,需要时再加载空间或布局。  2 尽量减少布局嵌套的层次和子空间数量  3 ListView从Adapter中获取子View时,尽量将子View的子View缓存起来,总比重新加载快。 二、数据库操作  1 如果是批量的操作,请使用事务,不要为每一个操作执行一次事务。操作成功,则将事务setSuccessful();反之,不

2014-01-02 17:42:02 523

原创 Android内存优化

OOM是个令人头疼的问题,Android碎片化的低端设备或者是占用内存较高的应用都会面对这个的问题。实际编码中有哪些具体经验可以总结呢?我觉得有以下几点。 1、ListView的adapter的getView方法里回传的convertView没有重用,如果在这个convertView里有分配了内存(如图片等),需要在回传的时候进行回收。 2、注意Cursor使用方式,尽量只查询需要的字段,尽可

2014-01-02 14:54:07 462

原创 Android屏幕适配方法

请参考Android 系统版本、屏幕尺寸和OpenGL版本分布情况概述http://developer.android.com/about/dashboards/index.html。注意:此数据不包含中国大陆地区。 Android屏幕的碎片化是开发者比较头疼的问题之一,本文将简要说明几种适配不同尺寸屏幕的方法。 首先介绍Android的布局、像素和资源文件夹的一些概念。 A

2014-01-02 11:29:13 820

转载 Android中Parcelable和Serializable的区别

推荐阅读:http://www.developerphil.com/parcelable-vs-serializable/ android 中自定义的对象序列化的问题有两个选择一个是Parcelable,另外一个是Serializable。 文中的结论直接拿来了: If you want to be a good citizen, take the extra time to i

2013-12-12 13:50:08 507

原创 Java垃圾回收机制

Java垃圾回收对应的是堆内存的灵活分配,因为java不要求程序员手动释放申请的堆内存,而这部分大块内存的回收工作就有JVM自己来完成。 Java垃圾回收的工作方式: 一、“引用-计数”。这是一种速度很慢的垃圾回收技术。每个对象都有一个引用计数器,当有引用连接至对象时,计数加1;当引用离开作用域或置为null时,计数减1。在之后的垃圾回收器遍历对象列表时,回收计数为0的对象所占内存。这种方法有

2013-09-05 23:02:46 502

原创 Java命名规则

Java对大小写敏感,Name 和 name不是等同的。java的保留字有以下51个         数据类型: boolean   int   long   short   byte   float   double   char   class   interface 流程控制: if    else   do   while   for   switch   case   def

2013-09-04 23:45:15 699

原创 Java数据类型

Java是一门面向对象的高级语言,但也保留了基本数据类型和运算符这些面向过程的元素。如何平衡对象和简单数据类型之间的抉择,被认为是设计面向对象语言所面临的挑战。Java很出色的完成了这个挑战。 Java中有八种基本数据类型,见下表:   数值类型 byte short char int long float double boolean 长度(字

2013-09-04 23:10:01 591

原创 Java内存分配

程序运行时,有五个不同的地方可以存储数据,分别是:寄存器、堆栈、堆、常量存储、非RAM存储,以下逐个说明: 一)寄存器。这是最快的存储区,位于处理器内部。空间极小,不能被直接控制(C和C++ 可以向编译器建议寄存器的分配方式)。 二)堆栈。位于通用RAM中,速度仅次于寄存器,要求存储的数据需要有明确的生命周期。一般用来存储基本数据类型和对象的引用。 三)堆。位于RAM中,

2013-09-04 22:15:48 481

原创 常用正则表达式

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。网上搜集的: 1、匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 2、匹配双字节字符(包括汉字在内):[^\x00-\xff] 评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 3、匹配

2013-09-04 21:27:40 470

原创 详述Android Looper和Hander

使用Handler和Thread是Android进行线程间通信的主要方式。具体方式是,在异步线程中,使用handler发送Message到指定队列(handler.sendMessage(Message msg))。目标队列接收消息后,将消息添加到队列中,Looper轮询队列,依次对异步线程发送过来的Message进行处理,下面结合Android源码详述。        先看Handler的

2013-09-04 21:05:14 800

深入理解计算机系统

程序员的角度看机器,深入剖析程序执行过程。程序员进阶必备

2013-09-24

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

TA关注的人

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