这门课解决什么工作场景

做 Android 开发,绕不开多媒体和传感器这两块日常高频场景。比如做一个图片社交应用,用户上传的原图动辄几兆,直接塞进内存会瞬间触发 OOM 崩溃;再比如做运动或工具类应用,需要调用方向传感器来实现指南针功能。这门课聚焦的就是这些界面之外、直接和硬件及系统底层打交道的场景。它没有泛泛而谈理论,而是把图片在内存中的表示方法、音视频播放的底层流转、传感器数据的获取流程拆开揉碎,专门解决应用开发中“图片加载就崩溃”“视频播放卡顿”“传感器读数不准”这些实际痛点。

适合什么基础与资料配合建议

资料适合已经掌握 Android 基础界面开发、能写出简单列表和页面跳转,但还没深入接触过硬件调用和多媒体处理逻辑的开发者。如果你完全不懂 Activity 生命周期,建议先补足基础再看。在资料使用上,建议不要跳跃式浏览,先重点啃透图片的存储与处理这部分,因为图片内存溢出是新手最容易踩的坑。看懂大图片加载和缩放逻辑后,立刻跟着涂鸦板案例把平移、旋转和颜色矩阵处理敲一遍。接着进入音视频部分,重点关注 SurfaceView 的生命周期回调,理解为什么视频渲染必须放在子线程。最后把传感器章节和指南针案例连起来看,弄清坐标系映射关系。视频讲解配合代码片段,一定要自己在真机上运行调试,模拟器无法真实反映传感器的数据变化。

学完能独立做什么

  • 能独立写出一个具备图片缩放、裁剪、涂鸦绘制及颜色滤镜功能的图像处理模块。
  • 能搞定包含网络音频异步播放、状态流转控制及本地视频渲染的播放器内核逻辑。
  • 能调用系统相机完成拍照与录像功能,并基于方向传感器数据独立开发出指南针等工具类应用。


本课程是Android应用开发基础课程中的部分课程,主要讲解图片的存储原理、图片的处理、音频视频的播放、传感器数据的获取,并结合案例让学习者学以致用。

课程目录

*   第一章 Android基础阶段/

  *   多媒体/

    *   计算机图形的表示方法

    *   加载图片到内存_x

    *   加载大图片到内存

    *   图片的缩放

    *   图片的平移旋转镜面和倒影效果

    *   随手涂鸦的ui

    *   随手涂鸦的核心逻辑

    *   随手涂鸦的细节

    *   撕衣服

    *   getX和getRawX区别

    *   图片的颜色处理

    *   音乐播放器的状态图

    *   异步播放网络上的音乐文件

    *   soundpool

    *   视频播放器

    *   SurfaceView子线程更新ui

    *   surfaceview生命周期的回调

    *   采用surfaceview播放视频

    *   照相机拍照

    *   视频的录制

  *   传感器/

    *   传感器的使用

    *   指南针