前言 本文让我们来聊聊匿名共享内存Ashmem。Ashmem为什么会诞生?共享内存本质上还是为了方便跨进程通信,减少拷贝次数,提高性能。 遇到问题可以来本文讨论https:/...
前言 本文让我们来聊聊匿名共享内存Ashmem。Ashmem为什么会诞生?共享内存本质上还是为了方便跨进程通信,减少拷贝次数,提高性能。 遇到问题可以来本文讨论https:/...
本文基于Android10的classlinker的源码,分析了linker对于class加载是怎么保证并发安全的。 简化DefineClass流程 重点一、InsertCl...
前言 好久没有更新常用的第三方库了。让我们来聊聊MMKV这个常用的第三方库。MMKV这个库是做什么的呢?他本质上的定位和sp有点相似,经常用于持久化小数据的键值对。其速度可以...
转载请标注出处:http://www.jianshu.com/p/7bf306c09c7e 先推荐一篇很不错的关于DisplayList构建的文章 Android N中UI硬...
Android中bindService是一个异步的过程,什么意思呢?使用bindService无非是想获得一个Binder服务的Proxy,但这个代理获取到的时机并非由bin...
任务和返回栈 应用通常包含多个 Activity ,每个 Activity 均应围绕用户可以执行的特定操作设计,并且能够启动其他 Activity,一个 Activity 可...
前言 今天我们继续讨论经典的动态规划问题之最小编辑距离问题。 最小编辑距离问题 问题描述 对于两个字符串A和B,我们需要进行插入、删除和修改操作将A串变为B串,定义c0,c1...
一. 概述 性能优化是 Android 中的一个重要知识,也是衡量一个 Android 工程师水平的重要依据,简单的性能优化,可能很多人都会。比如以下几个优化 UI 渲染的方...
目录 AAPT解释,作用 AAPT基本命令 AAPT编译资源源码解析 AAPT打包和系统不一致的资源ID AAPT是什么 AAPT - Android Asset Packa...
文章简介 很多人对Thread.join的作用以及实现了解得很少,毕竟这个api我们很少使用。这篇文章仍然会结合使用及原理进行深度分析 内容导航 Thread.join的作用...
前言 最近产品提了个需求,要把商品列表做成类似淘宝的样式 一般遇到这种需求,我们首先会想到的是,拦截TouchEvent,然后自己来处理滑动,这种方法虽然行得通,但是代码写起...
Author:杨空明 Date:2018-8-17 一、前言 Android开发者常常面临的一个问题就是防破解、 防二次打包。现如今安全问题越来越重要,越来越多的Androi...
组件化被越来越多的Android项目采用,而作为组件化的基础——路由也是重中之重。本篇文章将详细的分析阿里巴巴开源的路由框架ARouter。从源码的角度解释为什么这样使用,以...
本文基于LeakCanary 2.0源码分析LeakCanary - 官方地址LeakCanary - GitHub代码地址 LeakCanary 是什么 概念:LeakCa...
前面分析了VirtualApk支持插件中的4大组件运行的原理。本文就来讨论一下如何解决插件资源id和宿主资源id冲突的问题。本文会涉及到Andoird资源的编译和打包原理。因...