关闭

[置顶] Android进程启动流程

理解Android进程创建流程 理解Android进程启动之全过程 站在GITYUAN大神的肩膀上学习,用一张神图表示进程基本的启动流程. 上图还需对照源码进行查看,简述一下启动流程 在Android系统全貌描述到了Zygote孵化了第一个进程是system_server进程,而且孵化第一个App进程是Launcher,也就是桌面App。 当点击桌面App的时候,发起进程就是La...
阅读(413) 评论(0)

[置顶] Android中窗口的创建过程

从WindowManagerService的角度来看,标题中所说的“窗口”并非Window类,而是一个View类。Window类是一个顶级窗口外观和行为策略的抽象基类。它只是提供标准的UI策略,如背景,标题区域,默认键处理等。 窗口的类型Framework定义了三种窗口类型,三种类型的定义在WindowManager类中。 第一种为应用窗口。所谓的应用窗口是指该窗口对应一个Activity,由于加载...
阅读(387) 评论(0)

[置顶] Android系统全貌

转自Gityuan的Android开篇,对自我学习作进一步整理。 Android系统以Linux内核作为基底,上层采用Native层和Java层。系统分为内核空间和用户空间,并通过系统调用(Syscall)连通。用户空间主要采用C++和Java代码实现,通过JNI技术连通Java层和Native层(C/C++)。 Loader层 Boot ROM: 电源按下,引导芯片代码开始从预定义的地方...
阅读(384) 评论(0)

HTTP、HTTPS、SPDY、HTTP2.0

HTTP协议运行在TCP之上,所有传输的内容都是明文,HTTPS运行在SSL/TLS之上,SSL/TLS运行在TCP之上,所有传输的内容都经过加密的。...
阅读(11) 评论(0)

Java异常类

Java常见异常类的继承关系Java中,所有异常都继承自Throwable类。其中包含Error、Exception两个子类,Exception大类又分为运行时异常类(RuntimeException)和非运行时异常类。RuntimeException也叫做未检查性异常类,例如NullPointerException、IndexOutofBound...
阅读(21) 评论(0)

Python

http://www.icourse163.org/course/BIT-268001?tid=1002001005 字符序列 name=”jiaxin” 从左向右,索引值依次为0,1,2…. 从右向左,索引值依次为-1,-2,-3…. name[0:3] 表示一个从[0,3)的区间,name[0:-1] 表示0到len-1的区间 同步赋值 同时给多个变量赋值 ,…, =...
阅读(15) 评论(0)

Application、ContentProvider、Activity执行顺序

再了解Google官方出品的Android Architecture Components过程中,发现组件库接入过程中并不需要做初始化工作。通过查看源码,且分析apk中的AndroidManifest.xml发现文件中包含如下配置...
阅读(66) 评论(0)

一次面试题记录

有序数列{1, 2, 3, 4, 5, 6, … n} 从1到n的有序数列,0这个数字总共出现了多少次? 输入:整数n(1 ≤ n ≤ 1,000,000,000) 输出:0在数列中出现的次数...
阅读(70) 评论(0)

利用DeviceEventEmitter解决标题栏和数据列表联动问题

分析页面包含TitleBar和TabNavigator组件,同时TabNavigator包含三个MessageScreen组件,而在MessageScreen中是FlatList组件,其中的Item是自定义的MessageItem组件。所以嵌套层次还是挺多的。而要实现动画中的效果,需要点击TitleBar中的编辑按钮,刷新MessageItem的状态。...
阅读(58) 评论(0)

ReactNative尝鲜

在Android的世界里畅游了许久,感受着其中无与伦比的魅力。如今,又站在ReactNative的大门入口,小心窥探这个世界。...
阅读(54) 评论(0)

解决ReactNavigation中Navigator嵌套问题

需求:由主页MainScreen跳转到站内信页面MessageScreen,在MessageScreen存在自定义的TitleBar和3个Tab布局。...
阅读(141) 评论(0)

二进制逻辑运算

逻辑加法(“或”运算)逻辑加法通常用符号“+”或“∨”来表示。逻辑加法运算规则如下: 0+0=0, 0∨0=0 0+1=1, 0∨1=1 1+0=1, 1∨0=1 1+1=1, 1∨1=1 从上式可见,逻辑加法有“或”的意义。也就是说,在给定的逻辑变量中,A或B只要有一个为1,其逻辑加的结果就为1;只有当两者都为0时逻辑加的结果才为0。逻辑乘法(“与”运算)逻辑乘法通常用符号“×”或“∧”...
阅读(57) 评论(0)

ReactNative工作原理

《React Native应用开发实例解析》React的起源React,这个用于构建用户界面的JavaScript库,就是React Native的核心。为了理解React,先要熟悉几个概念。第一个概念,声明式编程范式(范式就是计算机程序架构与组件的构建风格),用这种范式表达计算逻辑时不需要描述控制流程。简单地说,声明式编程就是你编写代码描述想要做什么,而不是怎么做。第二个概念,异步,大多数Java...
阅读(95) 评论(0)

HashMap、TreeMap、HashTable区别

参考链接:http://www.importnew.com/7010.html...
阅读(80) 评论(0)

根Activity组件启动过程

图例只描述了Activity组件在进程外的启动过程,即从Launcher点击图标启动MainActivity的过程。MainActivity的启动过程涉及到了三个进程。MainActivity组件、LauncherActivity组件和ActivityManagerService组件分别运行在不同的进程中。...
阅读(64) 评论(0)

JavaScript之数组

var arr = ["a","b","c"];//for...in..遍历的是数组或对象的属性 for(var item in arr){ console.log(arr[item]) }var colors = ['red', 'green', 'blue']; colors.forEach(function (color) { console.log(color); });//fo...
阅读(90) 评论(0)

Webpack和Gradle

Webpack是当下最热门的前端资源模块化管理和打包工具。它可以将许多松散的模块按照依赖和规则打包成符合生产环境部署的前端资源。还可以将按需加载的模块进行代码分隔,等到实际需要的时候再异步加载。通过 loader 的转换,任何形式的资源都可以视作模块,比如 CommonJs 模块、 AMD 模块、 ES6 模块、CSS、图片、 JSON、Coffeescript、 LESS等。 以下内容摘自...
阅读(185) 评论(0)

【译】Android Architecture Components

一个全新的库集合,可帮助您设计强大,可测试和可维护的应用程序。用于管理UI组件生命周期和处理数据持久性。 便捷管理App的声明周期 新的生命周期感知(lifecycle-aware)组件可帮助您管理Activity和Fragment的生命周期。存储配置改变,避免内存泄漏,并使用LiveData,ViewModel,LifecycleObserver和LifecycleOwner轻松将数据加载...
阅读(200) 评论(0)
63条 共5页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:18349次
    • 积分:712
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:10篇
    • 译文:2篇
    • 评论:13条
    我的位置
    博客专栏
    最新评论