android自带的压缩方法MediaCodec
VideoCompressTask task = VideoCompress.compressVideoLow(tv_input.getText...
Flutter编译报错Context: This is the overridden method ('load')
Flutter编译报错:The method 'CachedNetworkImageProvider.load' has fewer positional
微信iOS多设备多字体适配方案总结
一、背景
2014下半年,微信iOS版先后适配iPad, iPhone6/6plus。随着这些大屏...
android工程目录application module和Library切换方式
假设我们有两个工程:MyApplication和MyLibrary,我们想导入MyLibrary到MyApplicat...
Launcher进程启动流程
1、Launcher
Launcher作为Android系统的桌面,它的作用有两点:
作为Android系统的...
序列化机制深入了解 | Java
序列化是将对象保存在磁盘中,或允许在网络中直接传输对象。对象序列化机制允许...
android View事件传递机制源码走查
上一篇文章我们看了触摸事件的产生 -> Activity.dispatchTouchEvent()的整个...
Android Kotlin之Flow数据流
Flow介绍
Flow是google官方提供的一套基于kotlin协程的响应式编程模型,它与Rx...
浅谈Fresco编码图片缓存
通过前面的分析我们了解到Fresco中的图片缓存分为3种: 解码图片内存缓存、编...
Android Zygote 启动流程
Android系统包含netd、servicemanager、surfaceflinger、zygote、media、installd...
android RecyclerView的基本设计结构
下面这张图是我截取的RecyclerView的Structure:
本文着重看: ViewHolder、...
AOSP 篇之添加 Product
1. 什么是 Product
在 App 的开发中,我们要去打渠道包,根据不同应用市场的要...
使用 Android Studio 开发系统 App
本文基于 AOSP Android10_r41 源码环境。
1. 编译 framework 模块
系统应用...
android glide最佳使用方式
Android Glide图片加载和缓存库 ,代码类似Picasso方式

