自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kevin's cache的专栏

誓要去 入刀山 浩气壮 过千关 豪情无限 男儿傲气...

  • 博客(253)
  • 资源 (3)
  • 收藏
  • 关注

转载 Java 集合系列14之 Map总结(HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)

概要学完了Map的全部内容,我们再回头开开Map的框架图。 本章内容包括:第1部分 Map概括第2部分 HashMap和Hashtable异同第3部分 HashMap和WeakHashMap异同转载请注明出处:http://www.cnblogs.com/skywang12345/admin/EditPosts.aspx?postid=3

2017-08-07 12:44:07 459

转载 Java 集合系列13之 WeakHashMap详细介绍(源码解析)和使用示例

概要这一章,我们对WeakHashMap进行学习。我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap。第1部分 WeakHashMap介绍第2部分 WeakHashMap数据结构第3部分 WeakHashMap源码解析(基于JDK1.6.0_45)第4部分 WeakHashMap遍历方式第5部分 Wea

2017-08-07 10:19:42 310

转载 Java 集合系列12之 TreeMap详细介绍(源码解析)和使用示例

概要这一章,我们对TreeMap进行学习。我们先对TreeMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用TreeMap。内容包括:第1部分 TreeMap介绍第2部分 TreeMap数据结构第3部分 TreeMap源码解析(基于JDK1.6.0_45)第4部分 TreeMap遍历方式第5部分 TreeMap示例转载请注明出处:http:

2017-08-05 10:39:40 345

转载 Java 集合系列11之 Hashtable详细介绍(源码解析)和使用示例

概要前一章,我们学习了HashMap。这一章,我们对Hashtable进行学习。我们先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable。第1部分 Hashtable介绍第2部分 Hashtable数据结构第3部分 Hashtable源码解析(基于JDK1.6.0_45)第4部分 Hashtable遍历方式第5部分

2017-08-05 10:32:17 396

转载 Java 集合系列10之 HashMap详细介绍(源码解析)和使用示例

概要这一章,我们对HashMap进行学习。我们先对HashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用HashMap。内容包括:第1部分 HashMap介绍第2部分 HashMap数据结构第3部分 HashMap源码解析(基于JDK1.6.0_45)第3.1部分 HashMap的“拉链法”相关内容第3.2部分 HashMap的构造函数第3

2017-08-05 10:20:10 448

转载 Java 集合系列09之 Map架构

概要前面,我们已经系统的对List进行了学习。接下来,我们先学习Map,然后再学习Set;因为Set的实现类都是基于Map来实现的(如,HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。首先,我们看看Map架构。如上图:(01) Map 是映射接口,Map中存储的内容是键值对(key-value)。(02) Abstr

2017-08-04 13:00:03 298

转载 Java 集合系列08之 List总结(LinkedList, ArrayList等使用场景和性能分析)

概要前面,我们学完了List的全部内容(ArrayList, LinkedList, Vector, Stack)。Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例 Java 集合系列04之 fail-fast总结(通过ArrayList来说明fail-fast的原理、解决办法) Java 集合系列05之 LinkedList详细介绍(

2017-08-04 12:57:41 396

转载 Java 集合系列07之 Stack详细介绍(源码解析)和使用示例

概要学完Vector了之后,接下来我们开始学习Stack。Stack很简单,它继承于Vector。学习方式还是和之前一样,先对Stack有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它。内容包括:第1部分 Stack介绍第2部分 Stack源码解析(基于JDK1.6.0_45)第3部分 Vector示例转载请注明出处:http://www.cnblogs

2017-08-04 12:53:41 310

转载 Java 集合系列06之 Vector详细介绍(源码解析)和使用示例

概要学完ArrayList和LinkedList之后,我们接着学习Vector。学习方式还是和之前一样,先对Vector有个整体认识,然后再学习它的源码;最后再通过实例来学会使用它。第1部分 Vector介绍第2部分 Vector数据结构第3部分 Vector源码解析(基于JDK1.6.0_45)第4部分 Vector遍历方式第5部分 Vector示例转载请

2017-08-04 11:29:26 387

转载 Java 集合系列05之 LinkedList详细介绍(源码解析)和使用示例

概要 前面,我们已经学习了ArrayList,并了解了fail-fast机制。这一章我们接着学习List的实现类——LinkedList。和学习ArrayList一样,接下来呢,我们先对LinkedList有个整体认识,然后再学习它的源码;最后再通过实例来学会使用LinkedList。内容包括:第1部分 LinkedList介绍第2部分 LinkedList数据结构第3

2017-08-04 11:26:17 381

转载 Java 集合系列04之 fail-fast总结(通过ArrayList来说明fail-fast的原理、解决办法)

概要前面,我们已经学习了ArrayList。接下来,我们以ArrayList为例,对Iterator的fail-fast机制进行了解。内容包括::1 fail-fast简介2 fail-fast示例3 fail-fast解决办法4 fail-fast原理5 解决fail-fast的原理转载请注明出处:http://www.cnblogs.com/skyw

2017-08-04 11:23:19 329

转载 Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例

概要上一章,我们学习了Collection的架构。这一章开始,我们对Collection的具体实现类进行讲解;首先,讲解List,而List中ArrayList又最为常用。因此,本章我们讲解ArrayList。先对ArrayList有个整体认识,再学习它的源码,最后再通过例子来学习如何使用它。内容包括:第1部分 ArrayList简介第2部分 ArrayList数据结构第3

2017-08-04 11:17:59 265

转载 Java 集合系列02之 Collection架构

概要首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图:Collection是一个接口,它主要的两个分支是:List 和 Set。List和Set都是接口,它们继承于Collection。List是有序的队列,List中可以有重复的元素;而Set是数学概念中的集合,Set中没有重复元素!List和Set都有它们各自的实现

2017-08-04 11:14:15 259

转载 Java 集合系列01之 总体框架

Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合工具包位置是java.util.*Java集合主要可以划分为4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections)、。Java集合工具包框架图(如下):大致说明:看上面

2017-08-04 11:00:59 237

原创 C语言单向链表的实现

偶然间想起了N年前的一个C语言的面试题目,现在做了一个总结,完美解答。一个简单结点的结构体表示为:    struct note    {       int  data;              /*数据成员可以是多个不同类型的数据*/       struct  note  *next;      /*指针变量成员只能是-个*/

2017-08-02 16:56:01 417 1

转载 Android之 MTP框架和流程分析

概要本文的目的是介绍Android系统中MTP的一些相关知识。主要的内容包括:第1部分 MTP简介            对Mtp协议进行简单的介绍。第2部分 MTP框架            介绍Android系统下MTP的框架。第3部分 MTP启动流程            详细分析MTP服务的启动流程,包括Java层, JNI层, kernel相关知识的介绍。

2017-08-01 14:18:15 608

转载 Android 4.4 Graphic系统详解(2) VSYNC的生成

VSYNC 的概念VSYNC(Vertical Synchronization)是一个相当古老的概念,对于游戏玩家,它有一个更加大名鼎鼎的中文名字—-垂直同步。“垂直同步(vsync)”指的是显卡的输出帧数和屏幕的垂直刷新率相同,这完全是一个CRT显示器上的概念。其实无论是VSYNC还是垂直同步这个名字,因为LCD根本就没有垂直扫描的这种东西,因此这个名字本身已经没有意义。但是基于历史

2017-08-01 10:12:45 718

转载 Android 4.4 Graphic系统详解(1) SurfaceFlinger的启动过程

init启动SurfaceFlingerSurfaceFlinger目前的启动方式是做为init进程中的一个Service来启动。在init中添加如下配置代码:[cpp] view plaincopy# Set this property so surfaceflinger is not started by system_init  setprop system_init.sta

2017-08-01 10:00:32 627

转载 Android 4.4 Graphic 图形架构

Graphic Architecture本篇文章是基于谷歌有关Graphic的一篇概览文章的翻译:http://source.android.com/devices/graphics/architecture.html大量文字以及术语的理解基于自身的理解,可能并不准确。文中有部分英文原文我也不能准确理解,对于这种语句,我在翻译的语句后加了(?)符号。This documen

2017-07-31 10:32:33 1154

转载 Android系统进程间通信(IPC)机制Binder中的Server启动过程源代码分析

原文出处:http://blog.csdn.net/luoshengyang/article/details/6629298  本文通过一个具体的例子来说明Binder机制中Server的启动过程。我们知道,在Android系统中,提供了多媒体播放的功能,这个功能是以服务的形式来提供的。这里,我们就通过分析MediaPlayerService的实现来了解Media Server的启动过

2017-07-22 10:02:17 558

转载 Android Binder实现(史上第二强理解,没有第一)

原文出处:http://blog.csdn.net/universus/article/details/6211589Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有的进程间通信IPC手段包括(Internet Process Connection): 管道(Pipe)、信号(Signal)和跟踪(Trace)、插口(Socket)、报文队列

2017-07-21 11:07:00 330

原创 android4.4如何不保存连接验证失败的WiFi热点

软件版本:Android4.4硬件平台:MTK发现Android4.4的WiFi连接之后,不论密码对或者错误都是会进入到已保存的状态,个人感觉有些不太合理。我们的产品需求需要添加两种用户提示:其一,超时提醒;其二,密码验证失败提醒。我这边关于这两种情况的实现是做了toast提示。密码错误的提示如下:--- a/vendor/vinci/packages/apps/V

2017-07-05 10:55:52 1041 2

原创 Android4.4修改activity默认切换动画

如题的需求,如何实现呢?一种方法是在activity启动或者finish的时候调用overridePendingTransition方法,但是此方法只针对此单个activity的进入退出切换动画,如果想要统一系统所有activity切换的风格,显然这种方法是不现实的。那么有没有其他的一劳永逸的方法呢?当然有,就是修改系统activity的主题theme,下边仅举activity退出

2017-06-07 11:00:03 2833 1

原创 Android Framework层的Service死锁问题分析

近来解决了一个可以使薪资提升10K的bug,做如下总结:硬件平台:MTK6572软件平台:Android4.4.2具体现象:        系统启动完成之后,高频率按powerkey会导致系统卡死,等待大概3~5分钟之后,进入开机动画,然后重启。在这3~5分钟之内,底层的事件都有,但是上层没有反应,而且dumpsys挂了,啥都出不来。        首先,通过logcat捕获那

2017-05-20 14:57:26 3207 1

原创 github设置添加SSH

        很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地。然而,为什么绝大多数人会使用https url克隆呢?这是因为,使用https url克隆对初学者来说会比较方便,复制https url 然后到 git Bash 里面直接用clone命令克隆到本地就好了。而使用 SSH url 克隆却需要在克隆之前先配...

2017-04-26 11:20:30 532

原创 android 命令行settings进行相关设置项的修改

Android的系统设置项会创建相应的数据库表项,那么如何手动用命令行修改这些数据库表项呢?那就是系统settings命令字。软件版本:Android4.4.2frameworks/base/cmds/settings/src/com/android/commands/settings/SettingsCmd.javaprivate static void printUsa

2017-04-26 10:25:19 5548 2

原创 Activity的四种启动模式分析

在介绍启动模式之前,我们先谈一个概念taskAffinity,每一个activity都存在该属性,标识了这个activity运行在哪个task中,或者理解为activity和task的依附关系。这个属性表示了activity希望进入的task,如果一个activity没有显式的指明taskAffinity,那么activity的该属性等于其所在application指明的该属性,如果其所在的app

2017-04-21 11:38:17 527

原创 Android Dalvik虚拟机内存分配问题

之前遇到一个Android上图片加载不出来的问题,在三星的note3上极容易出现,而在nexus 4上则很难出现。后来通过DDMS观察发现,是某一个模块一直内存泄漏使得内存接近上限,导致一些大图(需要的内存比较大)申请内存失败,一直加载不出来。为什么会出现这种状况呢?     通过getprop拿到两个手机上dalvik虚拟机的参数,三星的note3上的dalvik.vm.heapgr

2017-03-09 17:07:49 1388

原创 Git二分查找,定位问题提交

比如说你收到了错误报告,然后你知道前几天明明是好的,但是这几天有好多新的commit被部署了,那么我们怎么迅速的找到第一个引入Bug的commit呢?我们可以使用git bisect,git利用二分查找法迅速找到第一个坏的commit,下边看看具体怎么用就明白了。我们首先告诉git我们要开始binary search了。# git bisect start然后我们告

2017-03-07 14:00:51 1261

原创 含有虚函数的C++类大小

实战写类代码,根据输出看类大小:#include using namespace std;class Test1{virtual void func1(){}virtual void func2(){}public:virtual ~Test1();};class Test2{virtual void func2(){}};class S

2017-03-04 11:20:01 1206

原创 Android添加默认支持的WiFi热点

要求:系统启动后,自动连接一个固定的WiFi热点。首先:编辑AP配置的文件,wpa_supplicant.confctrl_interface=/data/misc/wifi/socketsdriver_param=use_p2p_group_interface=1update_config=1device_name=VINCImanufacturer=Vincimod

2017-02-23 14:27:39 2200 2

原创 用gradlew编译打包的app,如何添加进Android源码做build

对于用android studio编辑完的app源码如何添加到系统的source去做编译呢?如果要求作为launcher启动呢?没错就是写一个牛逼一点的Android.mk即可,上码子:## Copyright (C) 2008 The Android Open Source Project## Licensed under the Apache License, Versio

2016-12-20 11:51:12 1928 2

原创 Android框架层添加新KeyEvent事件

Android原生的KeyEvent事件有200多个,但是如果随便使用这些事件,上层的处理逻辑就会出问题,比如丢事件或者逻辑混乱,那么如何添加一套自己的KeyEvent事件呢?待我娓娓道来:这次添加的是一个需要底层input设备上报的双击事件。先从framework说起:--- a/frameworks/base/api/current.txt+++ b/frameworks/

2016-12-15 11:11:11 3375 1

原创 Ubuntu创建新用户及新用户NFS挂载远程目录权限问题

创建新用户:Step1:添加新用户useradd -r -m -s /bin/bash 用户名Step2:配置新用户密码passwd 用户名Step3:给新添加的用户增加ROOT权限vim /etc/sudoers然后添加:用户名 ALL=(ALL:ALL) ALL另外,如果直接用useradd添加用户的话,可能出现没有home下的文件夹,以及she

2016-12-08 14:53:47 3541

原创 添加已有input事件类型上层分发处理

添加系统已有的Key事件类型,为我所用的方法。首先,从驱动层面,上报的事件为202,203,从系统层面看,这俩键值对应到了类似外接键盘事件或者游戏按键之类的事件,然后我们的系统并不需要支持这种外设事件,因此这俩事件完全可用,并不会冲突。然后,我们来看系统层面的改动:--- a/frameworks/base/policy/src/com/android/internal/pol

2016-12-07 14:55:20 774

原创 Android添加APN配置后,OTA升级完成后,依然无法识别添加的APN

MTK平台中,添加APN配置项方法可以参考我之前的一篇文章:http://blog.csdn.net/dkbdkbdkb/article/details/51385172本文重点讲,修改了APN配置后,如何使系统在OTA升级之后,APN配置生效。因为,OTA升级更新的是三个区域,boot , recovery, system,APN属于DATA域,OTA升级不会涉及

2016-12-07 14:14:07 2406

原创 修改Android 休眠逻辑使系统关屏而不进入休眠

近日接到一个比较诡异的产品需求,在我看来需要修改Android PMS。具体需求如下: 要求在某一Activity界面在灭屏之后也能监听屏幕的手势事件,在我看来这种手势事件需求应该放在TP的驱动中来完成是最合理的,但是无奈硬件选型已过,而且手势不能完全支持我们的产品需求,无奈放弃底层的思路,开始改上层的电源管理逻辑。 首先说一下我修改的思路和逻辑,PMS在走

2016-11-30 11:34:24 12696 1

原创 android输入法特殊字符修改

Html特殊字符链接:  http://www.sjyhome.com/html/html-special-characters.html最近修改android输入法的一个key,需要将一个特殊符号改为&,之前不支持该符号,但是改了xml文件,总是报错:- + PinyinIME/res/xml/skb_sym2.xml:30: error: Error parsing

2016-11-22 18:58:57 1191

转载 浅析android应用增量升级

背景        随着android应用体积的不断增大,以及应用版本发布的不断更迭,用户的升级成了一个问题,google也意识到不断更新应用对用户流量的损耗,在Google I/O 上提及的 Smart App update,即应用增量升级,或者叫做差分升级的做法,并在新版本的Google Play中得到支持,某天在和群友聊天是扯到这方面的话题,好奇就稍微研究了一下。增量升级的原理

2016-11-16 16:44:58 306

原创 android 输入法软键盘屏蔽掉中文切换

android4.4.2屏蔽掉输入法的中文情节,直接上路子:diff --git a/packages/inputmethods/PinyinIME/res/xml/skb_sym2.xml b/packages/inputmethods/PinyinIME/res/xml/skb_sym2.xmlindex a55f91e..e0bdefd 100644--- a/packa

2016-11-08 16:32:24 4697

linux指令大全............

适合linux初学者的上乘秘籍!!!我刚买了一本感觉好就把他打成了文档,方便更多人

2010-03-18

考研真题。。。。。。。。。。

看了真题,包你复习效率大增。。。。。。。稳喥清华桂冠

2009-12-12

09年数学考研大纲数学一

对考研数学所考范围及深度做了很好的说明,值得一看呦。

2009-03-23

空空如也

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

TA关注的人

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