继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【学习打卡】第7天 即时通讯项目里面的语音处理-基础实现篇

循序渐进陈易寒
关注TA
已关注
手记 11
粉丝 1
获赞 1

课程名称:即时通讯项目里面的语音处理-基础实现篇
课程章节:2-5 Android-录音过程多线程处理
主讲老师:Piasy

课程内容:

今天学习内容有:

  • 涉及哪些多线程问题
  • 错误提醒的逻辑
  • 结束录音的逻辑

课程收获:

涉及哪些多线程问题

  • 防止阻塞线程,提高APP的响应能力

· 主线程16ms执行限制,不能执行I/O等耗时操作
· 模拟器:文件模式开启录音要20到30ms,停止录音耗时30到50ms
· 字节流模式下需要循环读写数据,只能放在后台线程

  • 主线程和后台线程状态同步

· 后台线程在循环中读取状态值,主线程改变状态值让后台线程退出
· 不需要synchronized互斥访问
· 需要volatile保证主线程的修改后台线程可见

  • 录音JNI函数不能多线程调用,避免闪退

· MediaRecorder: prepare(),start(),stop(),reset(),release()等
` AudioRecorder:startRecording(),read(),stop(),release()等

其他:

这里涉及的多线程的知识与kotlin中的不太一样,过几天打卡完课程以后会整理一下项目代码,用kotlin实现。

图片描述

图片描述

图片描述

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP