Android Native内存泄漏检测方案详解

本文将分三个部分阐述如何实现 Android Native 内存泄漏监控,包括代理实现的三种方案(Inline Hook、PLT/GOT Hook、LD_PRELOAD)及其优缺点,以及如何检测Native内存泄露和获取Android Native堆栈的方法。本文将提供一套比较全面的解决思路,帮助大家更好地检测 Android Native 内存泄漏问题。

5月前 1725次阅读 阅读全文 »

frida入门使用介绍

frida是android逆向分析最常用的工具之一,其是一种hook框架,可以在不改动目标源码的情况下,动态查看函数运行入参,返回值,注入代码,更改程序逻辑等,使得android逆向人员能够快速掌握一些问题的本质。本文将带大家了解各种frida的使用方法以及其中的一些坑。

9月前 4427次阅读 阅读全文 »

基于devfreq framework的GPU调频

AI时代已经来临,在日益增长的算力需求下,GPU已经成为AI世界不可或缺的工具,而移动端高渲染高帧应用也对移动端GPU提出越来越高的要求,本文将以高通的adreno gpu为例对GPU的调频进行介绍。

9月前 2692次阅读 阅读全文 »

Android Clear架构最强官方指南Kotlin版

在这篇文章中,我将介绍关于Android应用程序架构的一些内容。尽管自从早期更稳健的Android架构方法在移动开发中变得流行以来已经说了很多话,但改进和演进的空间总是存在的。

9月前 2803次阅读 阅读全文 »

企业微信大型Android系统重构之路

企业微信本地部署版(下文简称为本地版)是从2017年起,脱胎于企业微信的一款产品。本地版的后台服务能独立部署在政府或者大型企业的本地服务器上。在一个已经迭代了7年的大型Android系统中,企业微信本地版不可避免地会暴露出一些遗留系统的特点。本文将探讨我们在实践中采用的一些行之有效的重构案例,以及如何让一个大型软件系统持续保持活力。

10月前 2953次阅读 阅读全文 »

OpenGL ES 如何实现图像锐化?

图像锐化是一种图像处理技术,其目的是增强图像中的细节和边缘,使图像看起来更加清晰。这一过程通常涉及到突出图像中的高频信息,特别是强调像素之间的灰度变化。

11月前 2989次阅读 阅读全文 »

关于 OpenGL 的渲染上下文

OpenGL 的上下文(OpenGL context)是一个 OpenGL 绘图环境的抽象概念,它包括了所有 OpenGL 状态信息和资源,以便OpenGL能够正确地渲染图形。

1年前 3867次阅读 阅读全文 »

Android 对 so 进行简单 hook

Hook 技术又叫做钩子函数,在系统没有调用该函数之前,钩子程序就先捕获该消息,钩子函数先得到控制权,这时钩子函数既可以加工处理(改变)该函数的执行行为,还可以强制结束消息的传递。简单来说,就是把系统的程序拉出来变成我们自己执行代码片段。

1年前 3350次阅读 阅读全文 »

编译优化在微信视频号的落地实践

编译优化是通过编译技术获得性能提升的一类性能优化方法,它具有通用性和可持续性强的优势,一次投入后可长期保持稳定的优化效果,可以有效降低性能优化的成本。

1年前 3040次阅读 阅读全文 »

基于 Android 的文件同步设计方案

随着用户对自身数据保护意识的加强,让用户自己维护自己的数据也成了独立开发产品时的一个卖点。若只针对少量的文件进行同步,则实现起来比较简单。当针对一个多层级目录同步时,情况就复杂多了。鉴于相关的文章甚少,本文我分享下我的设计思路。

1年前 2887次阅读 阅读全文 »

深入理解 Android Window系统

Android中的窗口系统是应用程序用户界面的核心组件之一,它负责管理可视化区域、处理用户输入事件以及与系统UI交互。本文将深入介绍与Android窗口系统相关的重要概念,包括不同类型的窗口、创建窗口、窗口的特性和标志、生命周期以及如何创建自定义窗口。让我们开始吧!

1年前 3047次阅读 阅读全文 »

Android c++ core guideline checker 应用

本文作者是蚂蚁集团客户端工程师希德,教会你如何在 Android c++ 项目中应用 c++ core guideline checker,以统一最佳编码风格,提高代码的可读性和可维护性,提升 c++ 代码安全性、运行效率。

1年前 3164次阅读 阅读全文 »

多个AAR打包成一个AAR

公司日常开发基于自建的Maven服务器,不对外开放,公司内开发的SDK都传到私服,经过这么多年的迭代已经有上百个包,前段时间有其他公司需要依赖内部某个SDK,而这个SDK有依赖了公司好多SDK,但是公司内网权限无法对外开放,所以无法使用Maven方式对外提供依赖,如果基于AAR方式,对外提供十几个AAR不仅不友好,而且内部也不好维护迭代。

1年前 3372次阅读 阅读全文 »

OpenGL ES 实验室之 2D 篇 第三弹 の 直播白板

直播白板应用在搜狐视频App直播,配合播主的教学,在白板上展示英语、物理、历史等图片或者手绘文字。更加生动且有趣的进行讲解,并且还可以在助手App使用 PPT 等准备好的教材,让直播内容更加便捷,且素材丰富。助手还提供了大白板和小白板的切换来展示不同白板的效果,更充分和自由的展示白板,也让观众可以学习更多的知识。

1年前 3808次阅读 阅读全文 »

钉钉 Android 端功耗优化最佳实践

钉钉作为亿级企业数字化平台,高效即时沟通是核心能力之一,消息即时触达以及后台功耗一直是 Android 端核心体验,随着业务快速的发展,越来越多的消息信令通过钉钉自有的长连接通道推送到客户端,同时手机续航也是用户和手机厂商关心的核心体验之一。

1年前 5402次阅读 阅读全文 »