IVI系统中的Radio设计与实现

背景

提供无线电台的收音机功能。

架构      

UI:显示我的电台,附近的电台,调频等界面。 采用MVVM设计模式开发。

MediaConnection:作为桥梁,负责UI层与播放器层的之间的通信。

RadioMediaPlayer:封装Radio播放器API, 位于一个Service进程:

Network:加载附近网络电台。

Data Storage:保存电台播放信息,和缓存电台列表。

Hardware:定义了一组独立于车机平台的接口(HuRadio(调节收音机的能力),并为不同平台,提供了不同的实现。

硬件抽象层的实现

xxxCanbus

直接同Framework层的RadioService通信。在Framework层,自定义RadioService(Stub)

案例:

xxx1Audio播放一个电台的时序图

xxx2Radio

同Canbus通信, 由Canbus中的CarService调度Radio接口。

xxxHuRadio内部播放电台时序图:
注意这个时序图更加关注HuRadio内部的实现细节,不涉及SDK和App层

可以看到上图中有个LocalBroadCast 本地广播,用来接收底层CarSerive发出的和Radio有关的状态信息。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值