系统原理
文章平均质量分 73
lyglostangel
这个作者很懒,什么都没留下…
展开
-
kotlin基本类型
所有以未超出 Int 最大值的整型值初始化的变量都会推断为 Int 类型。如果初始值超过了其最大值,那么推断为 Long 类型。 如需显式指定 Long 型值,请在该值后追加 L 后缀。val one = 1 // Intval threeBillion = 3000000000 // Longval oneLong = 1L // Longval oneByte: Byte = 1可以使用带小数部分的数字初始化Double与Float变量。 小数部分与整数部分之...原创 2022-01-28 11:11:28 · 2586 阅读 · 0 评论 -
彻底理解ANDROID BINDER通信架构(上)
一. 引言1.1 Binder架构的思考Android内核是基于Linux系统, 而Linux现存多种进程间IPC方式:管道, 消息队列, 共享内存, 套接字, 信号量, 信号. 为什么Android非要用Binder来进行进程间通信呢?在说到Binder架构之前, 先简单说说大家熟悉的TCP/IP的五层通信体系结构:应用层: 直接为用户提供服务;传输层: 传输的是报文(TCP数据)或者用户数据报(UDP数据)网络层: 传输的是包(Packet), 例如路由器数据链路.转载 2021-10-21 17:23:36 · 342 阅读 · 0 评论 -
Android进阶——Android跨进程通讯机制之Binder、IBinder、Parcel、AIDL
前言Binder机制是Android系统提供的跨进程通讯机制,这篇文章开始会从Linux相关的基础概念知识开始介绍,从基础概念知识中引出Binder机制,归纳Binder机制与Linux系统的跨进程机制的优缺点,接着分析Binder的通信模型和原理,而Binder机制最佳体现就是AIDL,所以在后面会分析AIDL的实现原理,最后简单的提下AMS的Binder体系,整篇文章中间会穿插有IBinder、Binder、Parcel的介绍,整篇文章阅读难度不大,不会涉及到framework层的Binder原理,转载 2021-10-21 15:03:44 · 996 阅读 · 0 评论 -
android Binder
https://segmentfault.com/a/1190000039800120?utm_source=sf-similar-article转载 2021-10-21 14:12:16 · 57 阅读 · 0 评论 -
从数据传输的角度来分析Binder的通信过程
本篇文章来自一只大茶蛋的投稿,从binder数据传输的角度来分析binder通信的过程,相信会对大家有所帮助!同时也感谢作者贡献的精彩文章。一只大茶蛋的博客地址:https://egguncle.github.io// 前言 /前一阵弄了一个和binder有关的小工具,大概就是通过对ioctl进行hook,读取到binder的数据信息。https:...转载 2019-06-01 22:11:35 · 258 阅读 · 0 评论 -
Android Canvas总结
0x00 前言在Android开发中,有时产品需求会要我们实现一个复杂的控件,如果控件不是常用的类型,这时候我们不得不写一个自定义的控件来实现。自定义一个控件,目前一般通过继承View或者SurfaceView来实现。View和SurfaceView的区别在于,View必须在UI的主线程中更新画面,而SurfaceView是在一个新起的单独线程中可以重新绘制画面。View使用CPU来处理,...转载 2019-06-01 22:12:55 · 330 阅读 · 0 评论 -
一个APP从启动到主页面显示经历了哪些过程?
本文以图文并茂的形式简单介绍一个APP从启动到主页面显示经历了哪些流程,以及实现的原理。不介绍具体源码,仅仅构建一个大体框架。一、流程概述启动流程:①点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求;②system_server进程接收到请求后,向zygote进程发送创建进程的请求;③Zy...转载 2019-06-01 22:13:05 · 325 阅读 · 0 评论 -
Android插件化原理解析
概述Android插件化技术,可以实现功能模块的按需加载和动态更新,其本质是动态加载未安装的apk。本文涉及源码为API 28插件化原理插件化要解决的三个核心问题:类加载、资源加载、组件生命周期管理。类加载Android中常用的两种类加载器:PathClassLoader和DexClassLoader,它们都继承于BaseDexClassLoader。...转载 2019-06-01 22:11:22 · 154 阅读 · 0 评论 -
View.inflate() 的前世今生
误用 LayoutInflater 的 inflate() 方法已经不是什么稀罕事儿了……做 Android 开发做久了,一定会或多或少地对布局的渲染有一些懵逼:View.inflate() 和 LayoutInflator.from().inflate() 有啥区别? 调用 inflate() 方法的时候有时候传 null,有时候传 parent 是为啥? 用 LayoutInfl...转载 2019-06-01 22:10:59 · 185 阅读 · 0 评论 -
Android自定义View的实现方法,带你一步步深入了解View(四)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17357967不知不觉中,带你一步步深入了解View系列的文章已经写到第四篇了,回顾一下,我们一共学习了LayoutInflater的原理分析、视图的绘制流程、视图的状态及重绘等知识,算是把View中很多重要的知识点都涉及到了。如果你还没有看过我前面的几篇文章,建议先去阅读一下,...转载 2019-05-30 20:36:18 · 96 阅读 · 0 评论 -
Android视图状态及重绘流程分析,带你一步步深入了解View(三)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17045157在前面一篇文章中,我带着大家一起从源码的层面上分析了视图的绘制流程,了解了视图绘制流程中onMeasure、onLayout、onDraw这三个最重要步骤的工作原理,那么今天我们将继续对View进行深入探究,学习一下视图状态以及重绘方面的知识。如果你还没有看过我前面...转载 2019-05-30 20:35:01 · 109 阅读 · 0 评论 -
Android视图绘制流程完全解析,带你一步步深入了解View(二)
在上一篇文章中,我带着大家一起剖析了一下LayoutInflater的工作原理,可以算是对View进行深入了解的第一步吧。那么本篇文章中,我们将继续对View进行深入探究,看一看它的绘制流程到底是什么样的。如果你还没有看过我的上一篇文章,可以先去阅读 Android LayoutInflater原理分析,带你一步步深入了解View(一) 。相信每个Android程序员都知道,我们每天的开发工...转载 2019-05-30 20:33:01 · 95 阅读 · 0 评论 -
Android LayoutInflater原理分析,带你一步步深入了解View(一)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/12921889有段时间没写博客了,感觉都有些生疏了呢。最近繁忙的工作终于告一段落,又有时间写文章了,接下来还会继续坚持每一周篇的节奏。有不少朋友跟我反应,都希望我可以写一篇关于View的文章,讲一讲View的工作原理以及自定义View的方法。没错,承诺过的文章我是一定要兑现的...转载 2019-05-30 20:32:03 · 97 阅读 · 0 评论 -
Android事件分发机制完全解析,带你从源码的角度彻底理解
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9097463其实我一直准备写一篇关于Android事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了Android事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView...转载 2019-05-30 20:27:01 · 108 阅读 · 0 评论