一、引言 本文主要对Flutter工程编译时如何把Flutter生成的产物打包进入Android工程中进行分析。在Flutter工中打包过程中涉及到了local.proper...
BlockCanary是什么? BlockCanary是国内开发者MarkZhai开发的一套性能监控组件,主要通过监控Handler中的dispatchMessage过程所消...
gradle 插件 + asm 字节码基础讲完了,我们就要开始实战环节了,这次我们来做一个图片加载监控,本文虽然只讲一个实例,但是很多场景以及很多开源框架都会用到 Gradl...
记得第一次实施项目组件化时,遇到的最大困扰就是,组件之间的通信问题。例如: 怎么从这个组件跳转到另一个组件的页面; 组件之间怎么传递数据; 怎么获取其他组件的数据或服务; 组...
1. 前言 三国演义里开篇就说:天下大势,分久必合,合久必分。我发现这话套在软件开发上,也特别贴切。我记得我刚入门时做java后台开发,以及后来做Android应用程序开发,...
先说说我自己的组件化架构设计方案,请看下图: 图中可以看到,从上往下分为4层:APP壳工程、常规业务组件层、基础业务组件层、基础功能组件层。 为了便于理解,按照从下往上的顺序...
不以规矩,不成方圆。特别是多人协作开发时,如果没有统一的开发规范,势必会造成各种混乱。在实际开发中,常常会碰到的问题有: 引入的某个第三方库版本冲突; 不同组件里同名资源文件...
坑的背景 在下是一个小小的Android研发,前几天有个需求,需要接入Admob广告。我们的App有多个进程。主进程和其中一个子进程都有涉及到广告的逻辑。 坑是怎样形成的 ...
最近做了点关于这俩玩意的东西,记在这。 友提:废话较多,想看 tl;dr 的按end后往回翻。 首先,这俩东西都是用来处理视频的,为视频提供基于HTTP的Streaming方...
最近负责的项目中,有一定制客户频繁的抱怨设备在安装一些客户的app组件后,云端采集到的CPU占用率信息一直维持在78%以上,甚至还会出现90%的情况,与此同时,用户也反映了...
Mediacodec学习第一篇 -- EXOPlayer 1 学习前准备及关键问题思考 视频流硬解(至少自己完成本地视频的视频流硬解代码实现) 音频硬解(至少自己完成完成本地...
一、初识ReentrantLock 最后的结果是 20000000;如果去掉锁,那么输出结果是一个小于20000000的不确定的数 二、ReentrantLock的优点 ja...
大家吼,不知名程序猿小郭同学又冒泡啦,今天是主角是:业界知名,天朝最大异(tong)性交友平台,BILIBILI开源的视频播放器项目,基于FFMPEG的IJKPlayer<(...
做过图形图像处理coding的Android程序员一定用过或了解过PorterDuff.Mode这个枚举变量中的某些值,对此了解不多理解不深刻的时候是不是会很纠结到底该用那个...