Jeanboy

专注移动开发,热爱分享,热爱开源。

一篇文章看明白 Android 图形系统 Surface 与 SurfaceFlinger 之间的关系

Android - SurfaceFlinger 图形系统 概述 Android 系统启动过程 Activity 创建过程 Activity 与 Window 与 View 之间的关系 通过前面的知识我们知道了,Android 系统从按下开机键到桌面,从桌面点击 App 图标到 ...

2018-03-08 13:49:11

阅读数 4927

评论数 7

一篇文章看明白 Activity 与 Window 与 View 之间的关系

Android - Activity 与 Window 与 View 之间的关系 概述 我们知道 Activity 启动后就可以看到我们写的 Layout 布局界面,Activity 从 setContentView() 到显示中间做了什么呢?下面我们就来分析下这个过程。 如不了解 Ac...

2018-03-01 10:24:31

阅读数 2722

评论数 2

一篇文章看明白 Android 从点击应用图标到界面显示的过程

Android - Activity 启动过程 概述 从点击桌面应用图标到应用显示的过程我们再熟悉不过了,下面我们来分析下这个过程都做了什么。 本文主要对以下问题分析: ActivityThread 是什么,它是一个线程吗,如何被启动的? ActivityClientRecord 与...

2018-02-12 17:40:41

阅读数 4552

评论数 6

一篇文章看明白 Android 系统启动时都干了什么

Android - 系统启动过程 计算机是如何启动的? 首先熟悉一些概念,计算机的硬件包括:CPU,内存,硬盘,显卡,显示器,键盘鼠标等其他输入输出设备。 所有的软件(比如:操作系统)都是存放在硬盘上,程序执行时需要将程序从硬盘上读取到内存中然后加载到 CPU 中来运行。 当我们按下开机键...

2018-01-26 17:32:44

阅读数 1829

评论数 3

Android-性能优化-内存优化

Android-性能优化-内存优化 概述 JVM 内存分配机制 详见:JVM 内存分配机制 JVM 垃圾回收机制 详见:JVM 垃圾回收机制 DVM 与 JVM 的区别 虚拟机区别 Dalvik 虚拟机(DVM)是 Android 系统在 java虚拟机...

2017-09-22 11:16:56

阅读数 922

评论数 0

Android-性能优化-UI优化

Android-性能优化-UI优化 概述 Android 应用的卡顿,丢帧等,这些影响用户体验的因素绝大部分都与 16ms 这个值有关。 下面我们来讨论下 UI 渲染方面影响应用流畅性的因素。 16ms 12 fps(帧/秒):由于人类眼睛的特殊生理结构,如果所看画面之帧率高于每...

2017-09-06 10:00:35

阅读数 953

评论数 1

一篇文章看明白 HTTP,HTTPS,SSL/TSL 之间的关系

HTTP,HTTPS,SSL/TSL 概述 什么是 HTTP ? 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的 WWW 文件都必须遵守这个标准。【摘自百度百科】 伴随着计算机网络和浏览器的诞生,HTT...

2017-07-31 11:50:04

阅读数 4355

评论数 5

一篇文章看明白 TCP/IP,TCP,UDP,IP,Socket 之间的关系

TCP/IP,TCP,UDP,IP,Socket 概述 什么是 TCP/IP? TCP,UDP 有什么区别? 什么是 Socket? 网上这方面的资料有很多,但都很琐碎,没有系统化,要么看完很快就忘记了,要么就是看完迷迷糊糊似懂非懂,下面我们来一一攻破以上问题。 TCP/IP ...

2017-05-16 11:05:04

阅读数 1774

评论数 0

一篇文章了解相见恨晚的 Android Binder 进程间通讯机制

Android-Binder进程间通讯机制 概述 最近在学习Binder机制,在网上查阅了大量的资料,也看了老罗的Binder系列的博客和Innost的深入理解Binder系列的博客,都是从底层开始讲的,全是C代码,虽然之前学过C和C++,然而各种函数之间花式跳转,看的我都怀疑人生。毫不夸...

2017-04-11 18:12:53

阅读数 42328

评论数 30

金三银四跳槽季,拿上攻略有底气!

马上又到了金三银四了,整理了一些面试题分,希望对大家有所帮助 ~ 虽然我不推荐大家刷题,这里仅供大家差缺补漏。所有的知识点还是重在自己理解,用自己的方式表达出来比较好。 Java 知识 基础 什么是面向对象(OOP)? 什么是多态?实现多态的机制是什么? 接口(Interface)与抽象类(...

2019-02-15 11:57:36

阅读数 3899

评论数 24

一篇文章看明白 HashMap 工作原理

HashMap 源码分析 简介 HashMap 是 Java 语言中常用的用于存放键值对数据类型的集合类。随着 JDK(Java Developmet Kit)版本的更新,JDK 1.8 对 HashMap 底层的实现进行了优化,底层实现也由之前的 数组 + 链表 改为 数组 + 链表 + 红黑树...

2019-01-14 10:46:51

阅读数 47

评论数 0

一篇文章看明白 Android v1 & v2 签名机制

Android - v1 & v2 签名机制 一、什么是签名? 要想知道签名是什么,先来看为什么需要签名 ? 了解 HTTPS 通信的同学应该知道,在消息通信时,必须至少解决两个问题:一是确保消息来源的真实性,二是确保消息不会被第三方篡改。在安装 APK 时...

2018-12-06 11:24:35

阅读数 429

评论数 0

小程序 与 App 与 H5 之间的区别

小程序的实现原理 根据微信官方的说明,微信小程序的运行环境有 3 个平台,iOS 的 WebKit(苹果开源的浏览器内核),Android 的 X5 (QQ 浏览器内核),开发时用的 nw.js(C++ 实现的 web 转桌面应用)。 平台 渲染 js 运行环境 iOS WKWe...

2018-11-21 11:35:18

阅读数 2409

评论数 4

一篇文章看明白 Android PackageManagerService 工作流程

Android - PackageMangerService 分析 概述 PackageManagerService(简称 PKMS),是 Android 系统中核心服务之一,管理着所有跟 package 相关的工作,常见的比如安装、卸载应用。 PackageManagerService 是在 ...

2018-09-19 17:03:01

阅读数 1222

评论数 0

Gradle - 插件发布

插件发布 注册 bintray 账户 bintray 官网 首先注册选择右边开源账户注册,这个是免费的;右边只是免费试用30天。 推荐使用关联 github 账号的方式注册。 创建你的 Maven 仓库,如果没有创建这个库,后面上传会出现不存在 maven 路径的错误。 ...

2018-08-06 10:15:59

阅读数 151

评论数 0

Gradle - 插件开发

插件开发 新建 Module 首先新建一个项目,在项目中新建一个 Module 选择 Android Library,并修改目录结构删除不需要的文件如图: 目录结构: ProjectName |-src |-main |-groovy...

2018-08-02 10:22:50

阅读数 254

评论数 0

Gradle - Android Plugin DSL

Android Plugin DSL Android Plugin DSL 就是 Google 为了开发 Android 应用定制了一个插件,具体的插件配置请查阅官方文档。 Android Plugin DSL Reference - 官方文档 新建一个 Android 项目,可以看到 ...

2018-07-23 19:59:56

阅读数 135

评论数 0

Gradle - DSL

Gradle DSL Gradle 是一个编译打包工具,但实际上它也是一个编程框架。Gradle 有自己的 API 文档,对应链接如下: Gradle User Manual - 官方介绍文档 DSL Reference - API 文档 由此可以看出,编写 Gradle 脚本时,我...

2018-07-16 16:06:45

阅读数 263

评论数 0

Gradle - Groovy Language

Groovy Language Groovy - 官方文档 Gradle 依赖于 Groovy,Groovy 同时本身是一种 DSL。所以学习 Gradle 之前我们先熟悉一下 Groovy 语言。 DSL 的全称是 Domain Specific Language,即领域特定语言...

2018-06-28 17:09:15

阅读数 157

评论数 0

Gradle - 简介

Gradle 简介 Gradle 是什么? Gradle is an open-source build automation tool focused on flexibility and performance. Gradle build scripts are written ...

2018-06-13 12:20:00

阅读数 234

评论数 0

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