上图是Android整体的架构,Android Runtime之于Android而言相当于心脏之于人体,是Android程序加载和运行的环境。这篇文章主要针对Android ...
上图是Android整体的架构,Android Runtime之于Android而言相当于心脏之于人体,是Android程序加载和运行的环境。这篇文章主要针对Android ...
前言 LeakCanary 是我们非常熟悉内存泄漏检测工具,它能够帮助开发者非常高效便捷地检测 Android 中常见的内存泄漏。在各大厂自研的内存泄漏检测框架(如腾讯 Ma...
一、前言 logd 守护进程是日志系统的管家,内部维持三个日志 Socket : logd、logdr、logdw 来与客户端进行通信。同时负责维护几个环形缓冲区,用于存放系...
前提 Android Studio版本 工程配置,targetSdk 32,支持Android12 报错一 安卓12或者更高版本,新建的android工程,直接run,有可能...
一、基本概念 1、窗口显示架构图 多窗口的核心原理其实就是分栈和设置栈边界系统窗口.png 2、Android的窗口分类 Android应用程序窗口,这个是最常见的(拥有自己...
理解IActivityController 一 IActivityController.aidl简介 IActivityController.aidl是系统自带的aidl,在...
ShapeBlurView ShapeBlurView库是一个高斯模糊(毛玻璃效果)蒙层库。Like iOS UIVisualEffectView不知大家做需求的时候是否有这...
在Android开发中,我们可能会遇到实现某个TextView实现动画效果。关于这种需求,我给小伙们推荐推荐HTextView开源库,希望能小伙伴们提高开发效率。 HText...
虽然现在已经有很多不错的换肤方案,但是这些方案或多或少都存在自己的问题。在这篇文章中,我将对 Android 现有的一些动态换肤方案进行梳理,对其底层实现原理进行分析,然后对...
控件截图,顾名思义,就是把一个控件上,展现的相关信息,生成一个图片。 源码地址在文末!!! 所以,拆分步骤:(1)获取控件上的信息,生成一个可以保存的对象(bitmap)(2...
是什么?为啥用?怎么用?——灵魂三连问 1、序列化和反序列化是什么? 序列化:把对象转变为字节序列的过程称为对象的序列化。 反序列化:把字节序列恢复为对象的过程称为对象的反序...
顾名思义,FileChannel就是连接到文件的Channel。使用FileChannel,你可以读取文件数据,以及往文件里面写入数据。Java NIO的FileChanne...
Android10(API级别29)之前 Android10之后已经弃用,改用 NetworkCallbacks[https://developer.android.goog...
我们经常使用的SharedPreferences其实是存在很多缺陷的,主要表现在 占用内存 getValue时可能导致ANR 不支持多进程 不支持局部更新 commit或ap...
Android中多个弹窗的排队展示 在实际的开发中,我们会遇到多个弹窗的问题,又不能一次全部弹出,所以我们的代码就是 if else if else 循环嵌套。 例如我们在工...
1. 不做任何处理的情况下 如果没有针对性地做任何处理的话,默认情况下,当用户手机的重力感应器打开后,旋转屏幕方向,会导致app的当前activity发生onDestroy-...