很多时候系统自带的View组件并不能满足我们的需求,当我们需要特定的显示风格,处理特有的用户交互,封装一个高内聚的视图组件,就需要用到Android给我们提供的自定义View的能力。有了自定义View,我们可以针对特定的应用场景开发出适合该场景的View组件,比如自定义的下拉刷新组件,自定义的进度条组件等等。本片文章主要介绍自定义View的基础知识,为自定义View做充足的准备。
在前面一篇文章中《流媒体协议之HLS》介绍了什么是流媒体,什么是HLS以及分析了m3u8文件格式内容的含义。在本篇文章中更多的是实际操作,搭建一个流媒体服务,使用ffmpeg切割大的视频文件,使用ffmpeg切割大的视频文件并加密,使用ffmpeg整合视频片断,以及在代码中如何实现根据m3u8下载并解码对应的媒体文件。演示的环境是Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-62-generic x86_64)、nginx-1.19.6、gcc version 9.3.0、GNU Make 4.2.1O、OpenSSL 1.1.1f
2021已经到来了15天了,时间过得真快呀。因为前两周实在是太忙了,所以在这个周末才打算写一篇博客回顾我的2020年,2020其实事情挺多的,而且在我自己看来,也是进步很大的一年,在多年以后看到这篇文章,也许就像品尝一坛老酒,清香醇厚。以后每一年我都会有自己的年终总结,回顾这一年发生的所有对于我来讲比较重要的事情,就像小学的时候写作文,像一本流水账,越清晰的流水账越历久弥新。
Repo 是建立在Git上的一个多仓库管理工具,可以组织多个仓库的上传和下载。Repo是Google用Python脚本写的调用Git的脚本,主要帮助我们管理多个Git存储仓库,将其上传到我们的版本控制系统,并自动执行Android开发工作流程的某些部分。Repo并不是要取代Git,而是为了在Android环境下更加方便的使用Git。下面来看看Repo的具体用法吧!