上一篇我们分析了gradle插件的简单使用,这次我们看看如何自定义gradle工程的扩展配置 新建一个目录,将之前的文件都拷贝进去 新建一个扩展类 在Root文件中配置pat...
上一篇我们分析了gradle插件的简单使用,这次我们看看如何自定义gradle工程的扩展配置 新建一个目录,将之前的文件都拷贝进去 新建一个扩展类 在Root文件中配置pat...
gradle稍微复杂一点的能力,就是gradle插件,可以提供具体的构建功能task,提高代码的复用性,编译java代码,资源,打包apk,我们每次编译项目,都在使用grad...
关于gradle,是我们熟悉又陌生的事物,每次运行项目都在用,但是一些细节,却不太了解,不如做一次查缺补漏 gradle是一种自动化构建工具,基于Groovy来声明项目配置...
视频就是一组图像组成,图像由像素组成,像素由rgb组成,图像就是一组数据 分辨率:横向乘以纵向有多少个像素组成 像素的位深:多少个位表示一个像素 rgb888 24位 RGB...
音频在传输和使用的过程中,需要进行压缩,压缩的方向一般是压缩的比例和压缩的速度。 常用的思路就是消除冗余信息,因为人耳能听到的频率只有20hz-20000hz,采集到此频段之...
声音由振动产生,可以通过空气,固体,液体传递,到达耳膜 声音的三要素: 音调:音频的快慢,振动越快频率越高 音量:振动的幅度,幅度越大声音越大 音色:泛音/谐波,不同的泛音会...
新建一个navigation配置文件,创建3个fragment <navigation xmlns:android="http://schemas.android.com/a...
Navigation是jetpack中的一个ui控件,使用该组件可方便管理fragment的导航行为,甚至可以图形化管理fragment的跳转/动画,十分方便。 首先需要引...
WorkManager适合不实时完成任务的场景,同时满足了电量和体验的。由于内部有自己的数据库维护着任务,WorkManager能保证任务一定会执行完成,哪怕是重启设备。...
JobIntentService本质也是一个Service,一看job开头的系统组件,基本就是JobScheduler系列的产品 看文档上说明: O版本之前会立即执行,之...
IntentService继承自Service,适合处理短任务,核心实现是 ServiceHandler和Looper private final class Service...
kotlin在android项目中,不光可以代替java文件进行逻辑上的编码,在项目构建中,也可以在build.gradle中使用:grdle kotlin scripts...
在kotlin中,协程是方便而优雅处理长时间运行任务的方案 kotlin协程使得原来基于回调的代码改为了顺序编写,按照顺序编写的代码更容易阅读,协程和回调可以实现同样的功能,...
Room是Jetpack中的一个组件,处理和配置数据库的琐事,内部实现还是SQLite 数据通常使用数据类表示,使用函数get set修改访问,但在数据库中,需要使用实体...
LiveData类是用来观察生命周期变化的组件,LiveData是可观察的,当持有的数据发生变化后,观察者会收到通知。可以保存任意类型的数据。当观察者关联到LiveData...
我们平时开发的时候,经常要引用其他库,组件,有的时候是我们自己的,有时候别的项目组的,有时候是第三方的。放在我们自己项目里的组件模块最好修改,我分一个文件夹就隔离了,大一点的...
productFlavors是gradle的一个标签,主要用以区分渠道,也可用来区分debug,和release包,可以在物理层区分线上线下,甚至可以区分包名,一个手机可以装...
第五天早起坐火车去了乐山市,大概一个小时,打车去了酒店,乐山市里感觉整体没有成都繁华,吃饭和住宿的地方也没有比成都便宜特别多 中午吃过饭,直接来到景区 可能是离开省会的关系,...
来到成都第三天,上午去了杜甫草堂 过了门口,前面更像是一个公园, 到后面可以看到一个比较大的茅草房,看旁边的介绍是清代重建的仿制建筑,周围的商店也是类似风格 旁边有个小博物馆...