自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天天吃吃

不积跬步无以至千里

  • 博客(29)
  • 问答 (1)
  • 收藏
  • 关注

原创 博客搬迁到http://itanch.github.io/,欢迎访问

博客搬迁到http://itanch.github.io/,欢迎访问欢迎访问我一直坚守的个人博客itanch。

2017-02-14 16:16:51 552

原创 Cocos2d-x 安装

Cocos2d-x 入门 hello cocos2d 环境安装环境:Mac OS X 运行目标:Android Cocos2d版本:cocos2d-x-3.13.1,Cocos Console 2.1Cocos2d-x 安装

2016-12-23 16:59:50 645 1

原创 Android系统源码阅读(18):Android 应用的显示

Android系统源码阅读(18):Android 应用的显示1. 启动ActivityManagerService在前面第14章讲到,在System进程启动时,会启动系统的一些基本服务。启动就有ActivityManagerService和PackageManagerService。在SystemServer中如下启动ActivityManagerService。frameworks/base/s

2016-12-08 20:23:08 493

原创 Android系统源码阅读(17):Android 应用的安装

Android系统源码阅读(18):Android 应用的安装和显示 学到的才是自己的,干活都是扯淡1. 应用的安装PackageManagerService负责管理应用的安装。在第14章中讲到,SystemService会启动PackageManagerService,那么我们就从SystemService启动PackageManagerService开始分析。1.1

2016-12-07 20:37:16 909

原创 Android系统源码阅读(16):Android 应用线程的消息循环模型

Android系统源码阅读(16):Android 应用线程的消息循环模型 读书不宜拖沓0. 背景Android应用的主线程为ActivityThread,在第(10)章已经讲过,它主要负责处理界面事件,所以开发者应该避免在主线程中处理耗时的任务。为了减轻主线程的负担,开发者应该启用多线程来处理耗时的任务。在Android中可以创建多种线程,有的线程可以有自己的消息循环,

2016-12-04 21:52:44 861

原创 Android系统源码阅读(15):Android 应用进程的启动

Android系统源码阅读(15):Android 应用进程的启动 自己开心就好,何必管他人烦恼1. 应用进程创建ActivityManagerService负责管理应用进程的创建。这一节会讲述如何从ActivityManagerService申请创建一个app进程,然后从zygote克隆一个进程的过程。1.1 ActivityManagerService.startProcessLocked

2016-12-02 14:41:41 600

原创 Android系统源码阅读(14):Zygote和System进程的启动

Android系统源码阅读(14):Zygote和System进程的启动 再不学习我们就老了0. Zygote有什么卵用?Zygote是进程孵化器,Android系统中其他服务进程都是拷贝于它。Zygote在设计模式中对应于prototype,这样做的好处是可以通过拷贝Zygote来快速创建一个进程。1. Zygote脚本启动在开机时,init进程会调用如下脚本启动进程。system/core

2016-11-28 22:06:45 711

原创 Android系统源码阅读(13):Input消息的分发过程

Android系统源码阅读(13):Input消息的分发过程 请对照AOSP版本:6.0.1_r50。学校电脑好渣,看源码时卡半天先回顾一下前两篇文章。在设备没有事件输入的时候,InputReader和InputDispatcher都处于睡眠状态。当输入事件发生,InputReader首先被激活,然后发送读取消息,激活Dispatcher。Dispatcher被激活以后,将消息发送给当前激活窗

2016-09-27 22:34:23 3913 2

原创 Android系统源码阅读(12):InputChannel的注册过程

Android系统源码阅读(12):InputChannel的注册过程 请对照AOSP版本:6.0.1_r50。 InputManager可以获得输入事件并分发,Activity需要处理这些输入事件。那么,这两者之间如何建立的连接呢?这就需要InputChannel作为桥梁建立两者之间的通道。1. ViewRootImpl创建InputChannel这里ViewRoot类已经消失了,由View

2016-09-24 16:51:28 6339 1

原创 Android系统源码阅读(11):Android的InputManagerService的工作过程

Android系统源码阅读(11):Android应用的InputManagerService的工作过程 请对照AOSP版本:6.0.1_r50。 1. 创建InputManager这里和老罗当年的版本有很大不同了,有了InputManagerService管理InputManager。1.1想要探索如何启动的相关server,需要从SystemServer开始探寻。从SystemServe

2016-09-21 17:40:09 2195

原创 Android Monkey 源代码阅读

Android Monkey 源代码阅读1. Monkey开始启动 1. main函数只是设置了进程的名称,主要过程在run函数中执行。 2. 获取参数,初始化参数和随机数。然后它会获取系统的一些服务,见1.3。获取需要启动的main activity,见1.4。创建一个MonkeySourceRoandom对象mEventSource,由他管理随机事件的生成,这里首先让它生成了一个启动ma

2016-09-16 09:46:14 1828

原创 Android系统源码阅读(10):Android 应用程序的消息处理机制

Android系统源码阅读(10):Android 应用程序的消息处理机制基础知识 原来写好的博客被CSDN给坑了,法克,只能靠回忆重写。 Android应用程序的四种组件皆运行于ActivityThread之中。ActivityThread包含有程序入口main,同时它会启动一个循环,这个循环会轮询消息队列,来处理发送给它的消息。而四种组件则被这个线程统一管理。所以,ActivityTh

2016-09-13 15:12:14 550

原创 Android系统源码阅读(9):Content Provider数据更新通知

Android系统源码阅读(9):Content Provider数据更新通知Android系统源码阅读9Content Provider数据更新通知用户注册内容观察者Content Provider发送更新消息1. 用户注册内容观察者 1. 用户(比如一个Activity)想要实时获得某项内容的变化,需要注册相应的观察者。这个观察者可以自定,但是需要继承ContentObserver类,这

2016-09-07 20:57:28 665

原创 Android系统源码阅读(8):Content Provider数据传输过程

Android系统源码阅读(8):Content Provider数据传输过程 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。 Android系统源码阅读8Content Provider数据传输过程用户开始查询Content Provider处理事务Provider

2016-09-05 10:57:12 578

原创 Android系统源码阅读(7):Content Provider的启动

Android系统源码阅读(7):Content Provider的启动 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。 Android系统源码阅读7Content Provider的启动基本知识用户开始调用ProviderActivityManager处理请求

2016-08-31 14:06:01 512

原创 Android系统源码阅读(6):广播机制

Android系统源码阅读(6):广播机制 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。 Android系统源码阅读6广播机制注册广播接收器Step1 Activity开始注册Step2 ActivityManagerService处理注册发送广播Step

2016-08-21 15:44:45 782

原创 Android系统源码阅读(5):Service在进程内绑定

Android系统源码阅读(5):Service在进程内绑定 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。 Android系统源码阅读5Service在进程内绑定Step1 Activity开始启动ServiceStep2 ActivityManagerService

2016-08-18 22:59:04 509

原创 Android系统源码阅读(4):Service在新进程中启动过程

Android系统源码阅读(4):Service在新进程中启动过程 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。 Android系统源码阅读4Service在新进程中启动过程从Activity开始启动Service在ActivityManagerService中准

2016-08-18 13:52:31 445

原创 Android系统源码阅读(3):子Activity在进程内的启动过程

Android系统源码阅读(3):子Activity在进程内的启动过程 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。Android系统源码阅读3子Activity在进程内的启动过程子Activity在进程内的启动过程Step1 从旧Activity开始启动Step2

2016-08-17 10:03:23 743

原创 Android系统源码阅读(2):根Activity组件的启动过程

Android系统源码阅读(2):根Activity组件的启动过程 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。Android系统源码阅读2根Activity组件的启动过程代码摘抄两个版本的LauncherAndroid的Singleton模式的实现Activit

2016-08-06 17:56:33 1279

原创 ubuntu PPTPD 配置

ubuntu PPTPD 配置 PPTPD是一种很好使的网络代理工具ubuntu PPTPD 配置Server配置安装pptpd配置网络Server配置安装pptpd首先需要安装pptpd,ubuntu 默认安装该工具。 配置网络

2016-08-04 23:04:24 2659

原创 ubuntu14.04基本配置

ubuntu14.04基本配置ubuntu1404基本配置更新安装搜狗输入法安装JDK安装Eclispe配置Android SDKFirefox Flash插件常用命令更新:$ sudo apt-get update $ sudo apt-get upgrade安装搜狗输入法:$ sudo add-apt-repository ppa:fcitx-team/nightly #添

2016-07-25 12:08:58 518

原创 Android系统源码阅读(1):编译

Android系统源码阅读(1):编译 该系列只记录阅读代码时遇到的问题和心得体会,具体代码讲解可以参考老罗的《Android系统源代码情景分析》,我就不班门弄斧了。我编译的AOSP版本:6.0.1_r50。Android系统源码阅读1编译编译过程1 下载第三方二进制文件2 编译刷入真机启动emulator问题在Android Studio中阅读源码1 生成idegen2 导入

2016-07-24 13:24:02 1156

原创 《设计模式》之Creational模式:Builder

《设计模式》之Creational模式:Builder设计模式之Creational模式Builder目的驱动应用结构成员合作结果实现代码目的将复杂对象的创建和其表示相分离,因此相同的创建过程可以创造不同的表示。驱动一个可以变换文本格式的的RTF(Rich Text Format)阅读器,它应该可以将RTF转换成多种文本格式。这

2016-07-19 14:44:09 580

原创 Cydia Substrate 初尝试:刷计步软件数据

Cydia Substrate 初尝试:刷计步软件数据Cydia Substrate 初尝试刷计步软件数据Cydia设备准备探索思路监听器注册事件分发CydiaCydia Substrate是一个代码修改工具,可以修改IOS、Android系统代码,从而实现自己的奇思妙想。Cydia的使用方法教程不再赘述,下面直接进入实战。设备准备一台Root过得Android设备,Android系统版

2016-07-14 21:30:34 1708

原创 Nexus 7 搞机教程

Nexus 7 搞机教程Nexus 7 搞机教程系统准备刷入recovery激活Nexus 7Root刷入Android其它版本系统准备这里,我准备了Nexus 7(wifi第二版)作为测试机型,Android版本4.4.2。由于该机器是一个新机器,还没激活,需要在WLAN界面联网激活,否则无法进入系统。我已经尝试过使用代理IP,或者使用翻墙的其它手机作为热点,都以失败告终。所以,在这里

2016-07-11 14:23:00 2071

原创 《设计模式》之Creational模式:Abstract Factory

对象创建:Abstract Factory目的提供一个可以创建一族关联的或者依赖的对象,而不需要指定它们具体的类。有时也可称为Kit驱动假设有一个用户接口工具箱,它可以支持多种不同的观感标准,例如Motif和Presentation Manager。不同的观感标准定义了不同的外观和用户界面行为,例如滚动条、窗口和按钮。要想在不同的观感标准之间方便的迁移,一个应用不应该写

2016-07-08 10:48:59 562

原创 《设计模式》之Creational模式:简介

Creational Patterns简介创造(Creational)设计模式抽象了实例化的过程。它使得系统可以独立于对象的创建、组成和表示。一个类的Creational模式利用继承机制来改变它实例化的类。 当一个系统发展到更依赖于对象组合而不是类的继承时,Creational模式变得尤其重要。在这种情况下,不能将一些程序功能写死,而是定义一个小一点的基本功能集合,然后由其去构成其它复杂的功能。

2016-07-06 10:36:40 1072

原创 新的开始

Hello World天天吃吃 Blog今天诞生了! 夫君子之行,静以修身,俭以养德。 非澹泊无以明志,非宁静无以致远。 夫学须静也,才须学也,非学无以广才,非志无以成学。 淫慢则不能励精,险躁则不能冶性。 年与时驰,意与日去,遂成枯落,多不接世,悲守穷庐,将复何及!

2016-07-05 11:01:45 745

空空如也

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

TA关注的人

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