自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编程菜鸟---正在努力进阶

jacklam的日积月累

  • 博客(191)
  • 资源 (117)
  • 收藏
  • 关注

转载 从ViewRootImpl类分析View绘制的流程

【转载请注明出处:从ViewRootImpl类分析View绘制的流程 CSDN 废墟的树】从上两篇博客 《从setContentView方法分析Android加载布局流程》 和 《从LayoutInflater分析XML布局解析成View的树形结构的过程》 中我们了解到Activity视图UI是怎么添加到Activity的根布局DecorView上面的。我们知道Activi

2015-11-25 17:51:38 4939

转载 android发现之旅之ViewRootImpl,Activity,Window,DecorView之间的关系

android复杂的概念,经常会弄的人晕头转向.本篇说说ui里几个概念的关系.1. 从activity启动流程,可以看出各个对象的关系大家都知道,这是android ui的核心概念.收的就是界面的一个活动交互界面.用startAcvitity的方式启动.省去中间状态:在activity的attach接口中:5063 mWindow = PolicyM

2015-11-25 16:38:14 3182 2

原创 AlertDialog分析

2015-11-25 16:00:41 734

原创 Launcher分析3

结合前面两章,通过序列图大概看下launcher启动从application看起从 LaucherActivity看从上面可以看出主要是startloader,回调为launcher,application注册Launchermodel的广播,接收app等更改信息下面是startloader和app监听的序列图根据loader返回回调,触发view和数据

2015-11-23 16:26:37 1044 2

原创 Launcher分析2

从上图看到有这么些主要的view,同还有一个Cling主要用于workspace,folder,allapps的向导  View的运行主要看Launcher怎样setup     1.Launcher onCreate:a) 创建DragController,带入Launcher,b) 加载DragLayer,Workspace,Hotseat,Sear

2015-11-23 16:18:17 2147

原创 Launcher的分析

Launcher分析 1.AndroidMainifest.xmla) 通过original-package指定原始packageb) 定义了permisson,所属于的permissionGroup为android.permission-group.SYSTEM_TOOLSPRELOAD_WORKSPACE 需要签名一致,且为systemINSTALL_SHORTCUT 

2015-11-20 17:05:07 3388

原创 Touch事件分发机制

我们用手指去触摸Android手机屏幕,就会产生一个触摸事件,但是这个触摸事件在底层是怎么分发的呢?这个我还真不知道,这里涉及到操作硬件(手机屏幕)方面的知识,也就是Linux内核方面的知识,我也没有了解过这方面的东西,所以我们可能就往上层来分析分析,我们知道Android中负责与用户交互,与用户操作紧密相关的四大组件之一是Activity, 所以我们有理由相信Activity中存在分发事件的方法

2015-09-18 16:25:21 1507

转载 Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起

本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的。 下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口),一个Dialog,一个Toast,一个Menu菜单等。 首先对相关类的作用进行一下简单介绍: Window 类 位于 /frameworks/base/core/

2015-09-18 11:27:25 507

转载 Android ListView工作原理完全解析,带你从源码的角度彻底理解,androidlistview

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/44996879在Android所有常用的原生控件当中,用法最复杂的应该就是ListView了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。ListView可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。另外

2015-09-17 17:45:34 2565

转载 Android Studio系列教程六--Gradle多渠道打包

由于国内Android市场众多渠道,为了统计每个渠道的下载及其它数据统计,就需要我们针对每个渠道单独打包,如果让你打几十个市场的包岂不烦死了,不过有了Gradle,这再也不是事了。友盟多渠道打包废话不多说,以友盟统计为例,在AndroidManifest.xml里面会有这么一段:<meta-data android:name="UMENG_CHANNEL"

2015-09-14 11:13:30 689 2

转载 FindBugs 错误信息汇总

1.Call to equals() comparing different type       大部分都是类型永远不会有这种情况 比如a为DOUBLE类型所以EQUALS只匹配字符串 if(a.equals())或if(a.quals())这类判断是根本不会有用的的2.Class doesn't override equals in superclass    supe

2015-07-23 15:42:54 837

转载 敏捷开发之Scrum扫盲篇

现在敏捷开发是越来越火了,人人都在谈敏捷,人人都在学习Scrum和XP... 为了不落后他人,于是我也开始学习Scrum,今天主要是对我最近阅读的相关资料,根据自己的理解,用自己的话来讲述Scrum中的各个环节,主要目的有两个,一个是进行知识的总结,另外一个是觉得网上很多学习资料的讲述方式让初学者不太容易理解;所以我决定写一篇扫盲性的博文,同时试着也与园内的朋友一起分享交流一下,希

2015-07-17 10:57:32 648 2

转载 webview优化

1.加快HTML网页装载完成的速度默认情况html代码下载到WebView后,webkit开始解析网页各个节点,发现有外部样式文件或者外部脚本文件时,会异步发起网络请求下载文件,但如果在这之前也有解析到image节点,那势必也会发起网络请求下载相应的图片。在网络情况较差的情况下,过多的网络请求就会造成带宽紧张,影响到css或js文件加载完成的时间,造成页面空白loading过久。解决的

2015-07-16 11:39:15 3150

转载 Activity窗口添加流程

从Activity的onCreate(xxx)方法的setContentView(View view) 开始!代码路径:frameworks/base/core/java/android/app/Activity.javapublic void setContentView(View view) { getWindow().setContentView(view);

2015-03-03 10:25:15 706

原创 webrtc

http://blog.gaku.net/building-webrtc-for-android-on-mac/

2015-01-17 08:52:35 810

原创 BootAnimation使用surfaceflinger分析

详细,可参照

2014-08-28 15:31:54 4272

原创 packages.list和packages.xml

com.android.soundrecorder 10021 0 /data/data/com.android.soundrecordercom.android.sdksetup 10020 0 /data/data/com.android.sdksetupcom.android.launcher 10005 0 /data/data/com.android.launchercom.and

2014-08-04 15:33:52 9766

转载 android build.prop详解

# begin build properties开始设置系统性能# autogenerated by buildinfo.sh{通过设置形成系统信息}ro.build.id=MIUI(版本ID)ro.build.display.id=oyang06_MIUI(版本号)ro.build.version.incremental=2.2.1(版本增量)ro.bui

2014-08-04 14:31:20 14434

原创 ActivityManagerService和launcher的启动

SystemServer第三个启动的是ActivityManagerService本文参考http://blog.csdn.net/lilian0118/article/details/26561835(frameworks/base/services/java/com/android/server/SystemServer.java)

2014-07-31 17:03:52 7738

原创 installd分析

Installer是systemserver第一个创建的对象,代码位于frameworks/base/services/java/com/android/server/pm/Installer.java)

2014-07-25 16:32:41 3759

原创 sytemserver的启动过程

(frameworks/base/cmds/app_process/app_main.cpp)在 Android中使用启动脚本init.rc,可以在系统的初始化过程中进行一些简单的初始化操作。这个脚本被直接安装到目标系统的根文件系统中,被 init可执行程序解析。 init.rc是在init启动后被执行的启动脚本.android启动文件系统后调用的第一个应用程序是/init,此文件的很重要

2014-07-25 13:44:12 3007

原创 Java Thread相关(积累)

ThreadGroup

2014-07-25 10:58:29 772

原创 Looper,Handler, HandlerThread,Message,MessageQueue分析

首先,还是从SystemServer开始

2014-07-23 16:50:33 2039

原创 Binder中的ProcessState和IPCThreadState分析

ProcessState和IPCThreadState最为binder通信的基础,我们从MediaPlayer来开始分析这两个类

2014-07-18 13:48:12 10245

原创 Parcel分析

Parcel是android中不同于Java Serialize新的序列化机制。Java Serialize机制作用是能将数据对象存入字节流中,在需要时重新生成对象。主要应用是利用外部存储设备保存对象状态,以及通过网络传输对象等。而android系统定位内存受限设备,对性能要求更高,而且系统中采用了binder ipc机制,就需要求性能更出色的对象传输方式。Parcel定位就是轻量级高效的

2014-07-17 17:24:09 10737

原创 Java层Binder使用(ServiceManager)

power = new PowerManagerService();ServiceManager.addService(Context.POWER_SERVICE, power);context = ActivityManagerService.main(factoryTest);Slog.i(TAG, "Display Manager");display = new Displa

2014-07-08 16:48:48 6977

原创 通过MediaPlayer理解Binder的使用

理解Binder的使用是一件不容易的事,尤其由浅入深,本文参考Android深入浅出之Binder机制和Android Binder设计与实现这两文章为基础,从Java层的MediaPlayer开始分析Client, Server 和ServiceManager!至于Binder的实现可以搜索CSDN老罗的文章,涉及到kernel这里不讨论,本文只作为分析android代码记忆用 首先,先

2014-07-07 16:10:17 4120

转载 mysql积累

1. 下载MySQL Community Server 5.6.112. 解压MySQL压缩包将以下载的MySQL压缩包解压到自定义目录下。3. 添加环境变量变量名:MYSQL_HOME变量值:D:\Program Files\mysql-5.6.11-winx64即为mysql的自定义解压目录。再在Path中添加  %MYSQL_HOME%

2014-02-18 11:46:00 798

原创 Cocos2d-x源代码剖析(引用库)

我们先从目录结构开始讲解,然后以上篇文章的SimpleGame Activity继承的Cocos2dxActivity讲解怎么让android程序和cocos2dx协作1.引用库目录结构剖析引用库的目录结构如图。H和。Cpp主要是做适配器,适配不同的平台,android下则为适配器的实现Android目录如上,其中。H和。Cpp是前面适配器的适配实现,java和jni为

2013-05-23 15:18:59 6852

原创 Cocos2d-x源代码剖析-SimpleGame代码剖析

拿到了Andreas Loew TexturePacker和PhysicsEditor的key 和keyfile,可以开始Cocos2d-x源代码剖析了,感谢Cocos2d-x能开源,感谢Andreas Loew能免费给开发者使用他的TexturePacker和PhysicsEditor                Cocos2d-x源代码剖析(SimpleGame代码剖

2013-05-23 09:58:51 6460 3

原创 在linux(ubuntu)下安装配置svn服务器

安装命令sudo apt-get install subversion创建项目目录   创建svn仓库sudo mkdir /home/svnsudo svnadmin create /home/svn/projectcd /home/svn/sudo chmod -R 777 project/执行命令后生成以下文件

2013-05-13 11:39:17 1509

原创 JBOSS使用积累

1.只能localhost访问Boss4.2以上版本服务启动如果不加任何参数的话,只监听127.0.0.1,就是说只能用127.0.0.1或者localhost访问,用本机的对外地址 访问不了,同一网络内别的机子没法访问。除非你用参数-b ip地址 来绑定监听的地址才可以。这和以前版本的JBoss不一样,以前版本的不加任何参数是监听本机所有的IP地址,现在必须使用参数-b 0.0.0.

2013-05-07 14:14:24 2316 1

转载 Android 文件系统获取root权限和重新挂载根目录为可读写

最近在移植android2.3到s3c6410平台,文件系统成功挂载后,在超级终端执行一些命令不成功,比如mkdir,这样的基础命令,后来查阅资料,是自己没有取得root权限,只需在启动的shell时,指定该程序(shell 程序)属于root用户即可,修改init.rc文件如下:原始init.rc设置:  service console /system/bin/sh

2013-03-22 17:08:05 6161

原创 ffmpeg android编译

export PREBUILT=/home/jacklam/works/android-ndk-r8d/toolchains/arm-linux-androideabi-4.7export PLATFORM=/home/jacklam/works/android-ndk-r8d/platforms/android-8/arch-armexport TMPDIR=/home/jacklam/w

2013-01-28 13:57:19 3266 1

转载 nm

用途显示关于对象文件、可执行文件以及对象文件库里的符号信息。语法nm [ -A ] [ -C ] [ -X {32|64|32_64}] [ -f ] [ -h ] [ -l ] [ -p ] [ -r ] [ -T ] [ -v ] [ -B | -P ] [ -e | -g | -u ] [ -d | -o | -x | -t Format ] File ...描述nm 命令显示关于

2013-01-25 16:37:46 1072

转载 LINUX configure

Linux环境下的软件安装,并不是一件容易的事情;如果通过源代码编译后在安装,当然事情就更为复杂一些;现在安装各种软件的教程都非常普遍;但万变不离其中,对基础知识的扎实掌握,安装各种软件的问题就迎刃而解了。Configure脚本配置工具就是基础之一,它是autoconf的工具的基本应用。与一些技巧相比,Configure显得基础一些,当然使用和学习起来就显得枯燥乏味一些,当然要成为高手,对基础

2013-01-22 16:46:48 657

转载 SQLite学习手册(内存数据库)

一、内存数据库:     在SQLite中,数据库通常是存储在磁盘文件中的。然而在有些情况下,我们可以让数据库始终驻留在内存中。最常用的一种方式是在调用sqlite3_open()的时候,数据库文件名参数传递":memory:",如:    rc = sqlite3_open(":memory:", &db);    在调用完以上函数后,不会有任何磁盘文件被生成,取而代之的是,一个

2012-11-27 16:55:34 1003

转载 字符编码方式 ANSI、UNICODE、UTF-8、GB2312、GBK、DBCS、UCS

一直对字符的各种编码方式懵懵懂懂,什么ANSI、UNICODE、UTF-8、GB2312、GBK、DBCS、UCS……是不是看的很晕,假如您细细的阅读本文你一定可以清晰的理解他们。Let's go!              很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为"字节"。    再

2012-11-24 07:46:43 1090

转载 ffmpeg结构体的关系

基本概念:   编解码器、数据帧、媒体流和容器是数字媒体处理系统的四个基本概念。首先需要统一术语:    容器/文件(Conainer/File):即特定格式的多媒体文件。    媒体流(Stream):指时间轴上的一段连续数据,如一段声音数据,一段视频数据或一段字幕数据,可以是压缩的,也可以是非压缩的,压缩的数据需要关联特定的编解码器。    数据帧/数据包(Frame/Pa

2012-11-13 23:34:40 5181

转载 FFPLAY的原理

概要电影文件有很多基本的组成部分。首先,文件本身被称为容器Container,容器的类型决定了信息被存放在文件中的位置。AVI和Quicktime就是容器的例子。接着,你有一组流,例如,你经常有的是一个音频流和一个视频流。(一个流只是一种想像出来的词语,用来表示一连串的通过时间来串连的数据元素)。在流中的数据元素被称为帧Frame。每个流是由不同的编码器来编码生成的。编解码器描述了实际的数

2012-11-13 23:25:15 7217 1

mysql必知必会

mysql必知必会

2013-01-21

后台接口android

后台接口 android, 后台接口 android, 后台接口 android

2013-01-11

jboss后台接口

自己写的一个做例子用的jboss后台接口,需要有jboss

2013-01-11

apk打包工具

apk打包工具 bat

2012-12-11

HttpAnalyzer

HttpAnalyzer 绿色 破解 HttpAnalyzer

2012-12-04

json viewer

json viewer

2012-12-04

FFMpeg_SDK_开发手册

FFMpeg SDK 开发手册,解释结构体

2012-11-14

FFmpeg编写一个简单播放器详细步骤介绍

FFmpeg编写一个简单播放器详细步骤介绍, 音频,视频同步

2012-11-14

JAVA面向对象编程(孙卫琴)5

JAVA 面向对象编程 孙卫琴

2012-10-26

JAVA面向对象编程(孙卫琴)4

JAVA 面向对象编程 孙卫琴

2012-10-26

JAVA面向对象编程(孙卫琴) 3

JAVA面向对象编程(孙卫琴) 3

2012-10-24

JAVA面向对象编程(孙卫琴)2

JAVA面向对象编程(孙卫琴)2

2012-10-24

JAVA面向对象编程(孙卫琴)1

JAVA面向对象编程(孙卫琴)

2012-10-24

temple android

temple androidtemple

2012-10-21

JavaTCP/IPSocket编程

Java_TCPIP_Socket编程

2012-08-12

UEStudio_10

UEStudio_10.00.0.1012_SC

2012-08-09

Source Insight3.5

Source Insight3.5

2012-08-09

桌面Android

桌面Android

2012-08-09

android Media分析

android Media分析android Media分析android Media分析

2012-05-28

Android 2.0游戏开发实战宝典

Android 游戏开发 大全 苏亚光 吴亚峰

2012-05-02

fliddler4 setup

fliddler4 http代理监测 适合移动设备监测

2015-07-28

sokit-1.3 win32

sokit 1.3 win32 chs.

2015-07-28

Understand3.1

Understand3.1 64bit

2014-12-17

周炜的NeHe中文教程

周炜 NeHe 中文教程

2013-08-02

大学微积分下

大学微积分下,大学微积分下,大学微积分下

2013-07-30

大学微积分上

大学 微积分 上 课程资源 大学 微积分 上 课程资源

2013-07-30

高中数学课本

高中数学课本第1-4册(新教材)0.chm

2013-07-30

3DGrapher OPENGL

3DGrapher 三维坐标 OPENGL

2013-07-25

OpenGL超级宝典第二版

OpenGL超级宝典第二版

2013-07-24

OpenGL入门学习

OpenGL 入门学习 新手必看!!很实用多动手~强烈推荐!!

2013-06-18

SPP模型(CMMI)

SPP模型(CMMI)

2013-05-10

淘宝模版

淘宝模版

2013-05-01

资源共享代码

资源共享代码

2013-03-30

校园游戏竞技平台代码

校园游戏竞技平台代码

2013-03-30

绝对价值不菲的对战平台源代码

绝对价值不菲的对战平台源代码

2013-03-30

CA证书认证

CA证书 RSA KEYTOOL ANDROID

2013-03-21

游戏编程中的数理应用源代码

游戏编程中 数理应用 源代码

2013-03-05

游戏编程中的数理应用.part2

游戏编程 数理应用 part 2 数理应用

2013-03-01

游戏编程中的数理应用.part1

游戏编程中的数理应用 part 1 数理

2013-03-01

JNI详解学习

JNI详解学习

2013-01-28

空空如也

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

TA关注的人

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