Android开发过程中遇到各种异常是不可避免的。透过详细的异常记录,我们不但能理解程序崩溃的原因,还能根据异常类型采取针对性的解决措施。以下为一些常见的Android异常和...
Android开发过程中遇到各种异常是不可避免的。透过详细的异常记录,我们不但能理解程序崩溃的原因,还能根据异常类型采取针对性的解决措施。以下为一些常见的Android异常和...
开启混淆: 在proguard-rules.pro配置混淆的模版:
前言 ActivityRecord、Task、ActivityStack是和ActivityManager相关的三个很重要的数据结构,只有理解了它们,我们才能更好的理解Act...
1.它们在启动方式上有什么区别 2.它们在注册方式上有什么区别 3.它们在使用方式上有什么区别 系统服务大多数是跑在SystemServer里的,也是在SystemServe...
本篇文章基于Android11源码分析,本篇文章的源码均在frameworks目录下 1. 调整音量的方式: 在学习AudioService源码服务之前,我们看一下在应用层如...
本文由玉刚说写作平台提供写作赞助,版权归玉刚说微信公众号所有原作者:Mr.s(猪_队友)版权声明:未经玉刚说许可,不得以任何形式转载 今年谷歌I/O大会,谷歌发布了 Andr...
首先,在桌面新建一个test文件夹,并在该目录下新建2个文件夹folder1和folder2。 连接Android设备,在cmd窗口中使用adb shell后,使用 wm s...
遇到的问题: 用户的应用通过遥控器按键切换焦点时,已经开启了系统音量,但是没有切换焦点时没有提示声。 所以有了本篇文章,一是Key的事件分发逻辑,二是AudioManager...
1. 内存泄漏 为什么会出现内存泄漏?因为在GC垃圾回收时会利用GC Root可达性分析算法去遍历哪些对象正在被引用。如果一个对象该销毁时却被另一个更长生命周期的对象引用,则...
系统启动流程: 总框架Android系统框架[https://www.jianshu.com/p/f7421579719c] Init进程Android系统启动-Init进程...
前言 最近在看《Linux内核设计与实现》的时候,就想着要不把知识串联一下吧。 聊什么呢?今天先来聊聊 Android IO 的调用链路。 说起 IO,这可真是一个很复杂的过...
1. 概述 Android的启动优化主要是加速用户打开App到可交互的时间。在这段时间里面经历的Application的启动创建,SplashActivity、MainAct...
之前三篇文章介绍了 .class 文件的结构、JVM 对 .class 文件加载以及在 JVM 中是怎么执行程序的,接下来的文章会介绍 ASM 的使用,ASM 是运用访问者模...
我们平时在android studio中点击run ,就能把代码编译成一个apk文件并安装到手机上。那么这个过程中都具体发生了什么 ?我们是怎么把代码和资源文件打包成一个ap...
1. 类加载机制 在之前的文章万字长文把[JVM]从头到尾讲一遍[https://www.jianshu.com/p/8b37d2d22c62]中详细讲了JVM虚拟机的内存结...
实现思路 卡顿监控主要监控:慢方法的监控、ANR的监控、掉帧的监控。其实现方案主要有三种: Looper的Printer在消息执行前后的打印,计算出消息执行时间。 利用Cho...
大概 Android的ANR主要有两种方式:1. 通过handler的延迟机制触发ANR2. Input事件触发ANRService、BroadcastReceiver、Co...
1. App启动流程分析: 应用App进程的启动过程[https://www.jianshu.com/p/00e2ce96123d] activityActivity的启动流...