- 博客(81)
- 资源 (4)
- 收藏
- 关注
原创 Android事件分发机制完全解析(终极版二)
大家好,我是你们的康志哥。Android 事件传递机制是个很复杂的过程,大家读完Android事件分发机制完全解析(终极版)后,假如还有疑问,欢迎继续阅读这篇更加详细的分析文章,此篇文章还会介绍Android事件分发机制中对事件序列的处理。------------------------------------------------------------------------
2016-06-07 18:32:48
544
原创 Activity中的onSaveInstanceState()解析
大家好,我是你们的康志哥。很多开发朋友不是特别理解onSaveInstanceState()的使用或不清楚什么时候进行数据保存,原因可能是对Activity的生命周期理解得不深【可以先参考这篇文章:轻松彻底清晰Android Activity生命周期】,今天打算介绍一下onSaveInstanceState(),觉得文章写得不错的朋友,欢迎点赞。更欢迎路过的大神指出其中不足。-
2016-05-20 12:18:55
835
原创 Android 系统名字、版本、API level的对应关系
Code nameVersionAPI levelLollipop5.1API level 22Lollipop5.0API level 21KitKat4.4 - 4.4.4API level 19Jelly Bean4.3.xAPI level
2016-05-13 13:04:32
487
原创 Intent及其属性详解
一.Intent的介绍Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Ser
2016-05-10 23:10:18
1930
原创 轻松彻底清晰Android Activity生命周期
大家好,我是你们的志哥。今天给大家详解一下Android中Activity的生命周期,我希望我的讲解不像网上大多数文章一样,基本都是翻译Android API,过于笼统,相信大家看了,会有一点点的帮助,但是还不能完全吃透,所以我今天特意在重新总结一下. 首先看一下Android api中所提供的Activity生命周期图(不明白的,可以看完整篇文章,在回头看一下这个图,你会明白的
2016-05-05 15:41:42
1760
原创 Android事件分发机制完全解析(终极版)
要想理解 Android事件分发机制,请先参考下面两篇文章,本文是以这两篇文章为基础,继续深入浅出进行总结。Android事件分发机制完全解析,带你从源码的角度彻底理解(上)http://blog.csdn.net/guolin_blog/article/details/9097463Android事件分发机制完全解析,带你从源码的角度彻底理解(下)http://blog.
2016-05-04 12:32:05
1276
2
原创 Android编程之SparseArray<E>详解[取代HashMap]
最近编程时,发现一个针对HashMap的一个提示:翻译过来就是:用SparseArray来代替会有更好性能。那我们就来看看源码中SparseArray到底做了哪些事情:一、构造从构造方法我们可以看出,它和一般的List一样,可以预先设置容器大小,默认的大小是10:[java] view plain copypublic S
2016-04-28 20:48:07
375
原创 Android最佳性能实践(三)——高性能编码优化
在前两篇文章当中,我们主要学习了Android内存方面的相关知识,包括如何合理地使用内存,以及当发生内存泄露时如何定位出问题的原因。那么关于内存的知识就讨论到这里,今天开始我们将学习一些性能编码优化的技巧。这里先事先提醒大家一句,本篇文章中讨论的编码优化技巧都是属于一些“微优化”,也就是说即使我们都按照本篇文章的技巧来优化代码,在性能方面也是看不出有什么显著的提升的。使用合适的算法与数据结
2016-04-28 20:39:33
4558
原创 Android最佳性能实践(二)——分析内存的使用情况
由于Android是为移动设备开发的操作系统,我们在开发应用程序的时候应当始终把内存问题充分考虑在内。虽然Android系统拥有垃圾自动回收机制,但这并不意味着我们就可以完全忽略何时去分配或释放内存。即使我们全部按照上一篇文章中给出的编程建议来去编写程序,还是会很有可能出现内存泄露或其它类型的内存问题。所以,唯一能够解决问题的办法,就是尝试去分析应用程序的内存使用情况,那么本篇文章就会教大家如何进
2016-04-28 20:37:37
4550
原创 Android最佳性能实践(一)——合理管理内存
有不少朋友都问过我,怎样才能写出高性能的应用程序,如何避免程序出现OOM,或者当程序内存占用过高的时候该怎么样去排查。确实,一个优秀的应用程序,不仅仅要功能完成得好,性能问题也应该处理得恰到好处。为此,我也是阅读了不少Android官方给出的高性能编程建议,那么从本篇文章开始,我就准备开始写一个全新系列的博文,来把这些建议进行整理和分析,帮助大家能够写出更加出色的应用程序。注意本系列文章的
2016-04-28 20:26:02
4469
原创 乐观锁和悲观锁的区别
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人
2016-04-28 16:50:15
510
原创 线程的五大状态
线程从创建、运行到结束总是处于下面五个状态之一:新建状态、就绪状态、运行状态、阻塞状态及死亡状态。 1.新建状态(New): 当用new操作符创建一个线程时, 例如new Thread(r),线程还没有开始运行,此时线程处在新建状态。 当一个线程处于新生状态时,程序还没有开始运行线程中的代码 2.就绪状态(Runnable)
2016-04-28 16:20:40
280
原创 线程中sleep和wait的区别
1、这两个方法来自不同的类分别是Thread和Object2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在 任何地方使用(使用范围) synchronized(x){ x.notify()
2016-04-28 16:18:38
4319
原创 SQLITE中文编码转换问题
SQLITE中文编码转换的问题终于解决了。从数据库取的时候直接用rs.getBytes("username")取得byte[],而不是用rs.getString("username")取STRING。通过取得的BYTE来转即可以得到正常的中文,否则怎么转都是乱码。byte[] val = rs.getBytes(cols_name); data.put(cols_nam
2016-04-27 12:05:36
1900
原创 Android中文乱码的分析与解决
在手机与PC之间进行socket或HTTP通讯时,常常会出现中文乱码问题,其主要原因在于手机端字符编码默认为UTF-8,而服务器PC端默认为gbk或gb2312。 手机到PC的信息编码传递、接收、解码显示的过程为:手机端以UTF-8编码信息(包括汉字),写入socket输出流。在写入输出流,或在socket中传递时,或在PC端读取来自手机的Socket流信息时,系统把信息编码进行了一
2016-04-27 12:00:20
1170
原创 字符编码原理 ASCII,Unicode和UTF-8
字符编码笔记:ASCII,Unicode和UTF-8今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易懂,希望能对其他朋友有用。毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得
2016-04-27 11:29:07
2954
原创 UTF-8 GBK UTF8 GB2312 之间的区别和关系
UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码。UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示。如,如果是UTF8编码,则在外国人的英文IE上也能显示
2016-04-27 11:26:38
2505
原创 [Android]手机短信验证功能
介绍 短信验证功能大家都很熟悉了。在很多地方都能见到,注册新用户或者短息验证支付等。短信验证利用短信验证码来注册会员,大大降低了非法注册,很大程度上提高了用户账户的安全性。 目前市面上已经有了很多提供短信验证的服务商,有收费的,也有免费的。如果是个人的开发者,用免费的是最划算的了!下面我就介绍一个免费的短信验证平台---Mob.com Mob平台提供的短
2016-04-26 16:36:17
3516
转载 Java设计模式透析之 —— 适配器(Adapter)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9400141今天一大早,你的leader就匆匆忙忙跑过来找到你:“快,快,紧急任务!最近ChinaJoy马上就要开始了,老板要求提供一种直观的方式,可以查看到我们新上线的游戏中每个服的在线人数。”你看了看日期,不是吧!这哪里是马上要开始了,分明是已经开始了!这怎么
2016-04-23 16:01:35
352
原创 Android开发学习笔记:WebView的使用
WebView(网络视图)能加载显示网页,可以将其视为一个浏览器。它使用了WebKit渲染引擎加载显示网页,实现WebView有以下两种不同的方法:第一种方法的步骤:1.在要Activity中实例化WebView组件:WebView webView = new WebView(this);2.调用WebView的loadUrl()方法,设置WevView要显示的网页:
2016-04-22 15:13:50
359
转载 Android Volley完全解析(一),初识Volley的基本用法
1. Volley简介我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。不过HttpURLConnection和HttpCl
2016-04-20 20:22:01
281
转载 PendingIntent的内部机制
说说PendingIntent的内部机制 1 概述 在Android中,我们常常使用PendingIntent来表达一种“留待日后处理”的意思。从这个角度来说,PendingIntent可以被理解为一种特殊的异步处理机制。不过,单就命名而言,PendingIntent其实具有一定误导性,因为它既不继承于Intent,也不包含Intent,
2016-04-15 10:41:50
301
转载 深入浅出理解IntentService
IntentService提供的功能也很类似AsyncTask,都是来处理异步工作的。(AsyncTask入门可参考,http://blog.csdn.net/lincyang/article/details/6617802。)IntentService是继承自Service的,从源码上看,它是Service、HandlerThread和Handler的强强联合。源码也比AsyncTa
2016-04-14 09:15:11
356
原创 android计算手机的分辨率/像素/密度/屏幕尺寸/DPI值的方法
手机分辨率基础知识(DPI,DIP计算)1.术语和概念术语说明备注Screen size(屏幕尺寸)指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸摩托罗拉milestone手机是3.7英寸Aspect Ratio(宽高比率)指的是实际的物理
2016-04-12 10:30:28
5511
转载 Android Handler、Message完全解析,带你从源码的角度彻底理解
Android异步消息处理机制完全解析,带你从源码的角度彻底理解标签: AndroidHandlerMessageMessageQueueLooper2013-08-22 14:02 44422人阅读 评论(102) 收藏 举报 分类: Android疑难解析(35) 版权声明:本文出自郭霖的博客,转载必须注明出处。转载请
2016-04-10 23:22:41
498
转载 Android开发学习总结(一)——搭建最新版本的Android开发环境
最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1,学习Android开发的第一步就是搭建Android的开发环境,博客园里面有不少人也写了关于如何搭建Android开
2016-04-09 10:23:09
441
转载 基于XMPP协议的Android IM研究
之前在做基于XMPP协议的Android IM项目的过程中遇到了不少问题,由于国内这方面的资料相对比较少,而且不够全面,经过不断的学习和请教,项目有了一点进展,下面分享一下在项目的过程中遇到的问题和解决办法。首先,声明XMPP连接:Java代码 public static final ConnectionConfiguration connConfig = n
2016-04-07 16:29:31
336
转载 android应用程序如何调用支付宝接口
最近在做一个关于购物商城的项目,项目里面付款这块我选的是调用支付宝的接口,因为用的人比较多。 在网上搜索了以下,有很多这方面的教程,但大部分教程过于陈旧,而且描述的过于简单。而且支付宝提供的接口一直在更新,可能支付宝那边是为了让接口更容易被调用吧,以前有些老的教程稍微跟现在接口有些不能“对号入座”,于是,我决定抽空写一篇关于调用支付宝接口的文章,跟大家分享,让大家以最快的
2016-04-07 10:37:20
622
转载 Android静默安装实现方案,仿360手机助手秒装和智能安装功能
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢?所谓的静默安装,就是不用弹出系统的安装界面,在不影响用户任何操作的情况下不知不觉地将程序装好。虽说这种方式看上去不打搅用户,但是却存在着一个问题,因为Android系统会在安装界面当中把程序所
2016-04-01 17:15:01
450
原创 Android 如何监听返回键,弹出一个退出对话框
Android 如何监听返回键点击事件,并创建一个退出对话框,防止自己写的应用程序不小心点击退出键而直接退出。自己记录下这个简单的demo,备用。源码如下:[html] view plain copypublic class BackKeyTest extends Activity { /**
2016-03-31 19:37:24
986
1
原创 Android ListView异步加载图片乱序问题,原因分析及解决方案
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/45586553在Android所有系统自带的控件当中,ListView这个控件算是用法比较复杂的了,关键是用法复杂也就算了,它还经常会出现一些稀奇古怪的问题,让人非常头疼。比如说在ListView中加载图片,如果是同步加载图片倒还好,但是一旦使用异步加载图片那么问题就来了,这
2016-03-28 17:02:13
430
原创 Android ListView工作原理完全解析,带你从源码的角度彻底理解
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/44996879在Android所有常用的原生控件当中,用法最复杂的应该就是ListView了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。ListView可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。另外
2016-03-28 14:54:33
470
1
转载 Android自定义View的实现方法,带你一步步深入了解View(四)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17357967不知不觉中,带你一步步深入了解View系列的文章已经写到第四篇了,回顾一下,我们一共学习了LayoutInflater的原理分析、视图的绘制流程、视图的状态及重绘等知识,算是把View中很多重要的知识点都涉及到了。如果你还没有看过我前面的几篇文章,建议先去阅读一
2016-03-28 10:15:31
327
转载 Android视图状态及重绘流程分析,带你一步步深入了解View(三)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17045157在前面一篇文章中,我带着大家一起从源码的层面上分析了视图的绘制流程,了解了视图绘制流程中onMeasure、onLayout、onDraw这三个最重要步骤的工作原理,那么今天我们将继续对View进行深入探究,学习一下视图状态以及重绘方面的知识。如果你还没有看过我
2016-03-27 16:38:00
372
转载 Android视图绘制流程完全解析,带你一步步深入了解View(二)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/16330267在上一篇文章中,我带着大家一起剖析了一下LayoutInflater的工作原理,可以算是对View进行深入了解的第一步吧。那么本篇文章中,我们将继续对View进行深入探究,看一看它的绘制流程到底是什么样的。如果你还没有看过我的上一篇文章,可以先去阅读 Andro
2016-03-27 15:56:11
330
转载 Android LayoutInflater原理分析,带你一步步深入了解View(一)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/12921889有段时间没写博客了,感觉都有些生疏了呢。最近繁忙的工作终于告一段落,又有时间写文章了,接下来还会继续坚持每一周篇的节奏。有不少朋友跟我反应,都希望我可以写一篇关于View的文章,讲一讲View的工作原理以及自定义View的方法。没错,承诺过的文章我是一定
2016-03-27 15:02:55
318
转载 Intent和PendingIntent的区别
intent英文意思是意图,pending表示即将发生或来临的事情。 PendingIntent这个类用于处理即将发生的事情。比如在通知Notification中用于跳转页面,但不是马上跳转。 Intent 是及时启动,intent 随所在的activity 消失而消失。 PendingIntent 可以看作是对intent的包装,通常通过getActivity,getBroadc
2016-03-27 11:20:40
447
转载 深入理解java socket编程
------------------------------------------------------------------------------------------------------------------------------------------------------对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我
2016-03-23 21:26:44
1288
转载 深入理解HTTP协议
http协议学习系列1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义
2016-03-23 19:39:48
475
转载 Android实现推送方式解决方案
本文介绍在Android中实现推送方式的基础知识及相关解 决方案。推送功能在手机开发中应用的场景是越来起来了,不说别的,就我们手机上的新闻客户端就时不j时的推送过来新的消息,很方便的阅读最新的新闻信息。 这种推送功能是好的一面,但是也会经常看到很多推送过来的垃圾信息,这就让我们感到厌烦了,关于这个我们就不能多说什么了,毕竟很多商家要做广告。本文就 是来探讨下Android中实现推送功能的一些解决方
2016-03-23 17:21:15
280
高仿网易新闻Android源码(附安装说明)
2016-01-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人