背景前段时间国家加强对 app 获取用户隐私信息的限制。手 Q 需要排查在用户未同意隐私条款之前有哪些业务进行了获取 IMEI 和应用列表的调用怎么排查才能不漏掉某些调用?最...
背景前段时间国家加强对 app 获取用户隐私信息的限制。手 Q 需要排查在用户未同意隐私条款之前有哪些业务进行了获取 IMEI 和应用列表的调用怎么排查才能不漏掉某些调用?最...
摘要: 本文发现了一类OOM(OutOfMemoryError),这类OOM的特点是崩溃时java堆内存和设备物理内存都充足,探索并解释了这类OOM抛出的原因。 关键字: O...
前言 本文基于 linux 3.18 和 Android 9.0 版本源码,涉及的源码文件路径为: Binder 驱动http://androidxref.com/kerne...
一 内存映射函数的实现 binder_mmap(kernel/drivers/android/binder.c) 打开binder后,需要调用mmap进行内存映射,该函数经过...
公司最近进了好几个新人,都是大学刚毕业或者毕业一年两,算得上公司想要的可以重点培养的好苗子。 A本科毕业,英语专业八级,经过层层选拔,突破重围,终于脱颖而出。她性格谦逊,刚进...
🏻。如果最后能结合具体源码分析一下更好。
Carson带你学JVM:Java对象如何判断存活原则-引用计数法 & 引用链法前言 如何判断一个Java对象是否存活对于垃圾回收、防止内存泄漏等十分重要 本文将全面讲解判断Java对象存活的方式,希望你们会喜欢 Carson带你学JVM系列文章,具体如...
两年前阿里开源了Dexposed 项目,它能够在Dalvik上无侵入地实现运行时方法拦截,正如其介绍「enable 'god' mode for single android...
问题 使用 OpenGL 开发过程当中可能会遇到需要理解一些关键错误日志 log 的意思,比如 我们得结合源码分析背后在干一件什么事情 解决方案 了解 EGL 和 OpenG...
背景 在项目中遇到需要讲明白 EGLContext 类「为什么」需要在「创建线程」执行销毁操作问题。然后跟进这个问题理解 pthread 的实现原理,在这里做记录 整理的目的...
背景 这段时间经常跟 OpenGL ES 和 EGL 打交道。在这整理记录 EGL 接口的使用方法,方便后续理解 问题 EGL 是一层接口,上层跟 OpenGL 对接,下层跟...
背景 项目中遇到需要实现某种 UI 特效的需求,刚好 Xfermode 能解决这个问题。现整理出来记录和备忘。 是什么 android.graphics.Xfermode 是...
背景 项目中遇到需要监控 System.loadLibrary 方法调用,实现如果链接失败则弹出对话框的「问题」。「解决方案」就是 hook java.lang.Runtim...
Android上的热修复框架 AndFix 想必已经是耳熟能详,它的原理实际上很简单:方法替换——Java层的每一个方法在虚拟机实现里面都对应着一个ArtMethod的结构体...
背景 项目遇到点击事件和动画开始时机时序问题,在这整理点击事件产生过程,作备忘。 以下假设已经理解单次 Activity.dispatchTouchEvent 流程,包括 V...
背景 实际项目中涉及到对 C++ 引用的使用,这里记录个人对其的理解,并把它加入到个人「专业」知识结构 是什么 在 C++ 编程语言中的引用是一种「复合数据类型」,是在基本类...
前言 在梳理 Android 必备知识过程中,想理解 Activity.setContentView 之后到显示出 View 的过程背后到底干了什么,将阅读和分析完源码之后知...