- 博客(76)
- 资源 (14)
- 收藏
- 关注
原创 【AAOS】【源码分析】CarAudioService(二)-- 功能介绍
车内的音频环境要远比手机设备复杂,除了信息娱乐系统以外,车内的音频设备同样有可能被其他系统使用,因此音频处理也比手机系统更复杂,接下来会通过代码角度来分析车载音频的具体处理逻辑。
2025-04-09 14:32:03
889
原创 【AAOS】【源码分析】CarAudioService(一)-- 基本介绍
CarAudioService(汽车音频系统)是在核心 Android 音频堆栈的基础之上打造而成,以支持用作车辆信息娱乐系统的情况。AAOS 负责实现信息娱乐声音(即媒体、导航和通讯声音),但不直接负责具有严格可用性和计时要求的铃声和警告。虽然 AAOS 提供了信号和机制来帮助车辆管理音频,但最终还是由车辆来决定应为驾驶员和乘客播放什么声音,从而确保对保障安全至关重要的声音和监管声音能被确切听到,而不会中断。
2025-04-07 14:17:03
559
原创 【AAOS】【源码分析】CarSystemUI -- Keyguard
keyguard实现代码:packages/apps/Car/SystemUI/src/com/android/systemui/car/keyguard。用于锁屏界面的资源文件:packages/apps/Car/SystemUI/res-keyguard。AAOS 15的Keyguard支持多种身份验证方法,包括PIN码、密码、图案解锁。
2025-04-07 10:34:20
472
原创 【AAOS】Android Automotive 14模拟器源码下载及编译
【代码】【AAOS】Android Automotive 14模拟器源码下载及编译。
2024-10-13 15:58:24
775
原创 【AAOS】Android Automotive 15模拟器源码下载及编译
【代码】【AAOS】Android Automotive 15模拟器源码下载及编译。
2024-10-13 11:39:37
800
原创 【车载以太网】【SOME/IP】vsomeip代码解析--routing_manager
RoutingManager负责维护客户端的订阅列表,并在服务端有新的发布事件时,将该事件路由到所有订阅了该事件的客户端。
2024-09-17 15:38:40
1312
原创 【车载以太网】【SOME/IP】vsomeip代码解析
vsomeip整体配置文件环境变量#define VSOMEIP_ENV_APPLICATION_NAME "VSOMEIP_APPLICATION_NAME" #define VSOMEIP_ENV_CONFIGURATION "VSOMEIP_CONFIGURATION" #define VSOMEIP_ENV_CONFIGURATION_MODULE "VSOMEIP_CONFIGURATION_MODULE" #define VSOMEIP_ENV
2024-09-17 10:08:43
475
翻译 【车载以太网】【SOME/IP】vsomeip介绍
vsomeip 是GENIVI项目中的一个SOME/IP开源实现,基于Mozilla Public Liense v2.0协议开源,由BMW贡献。
2024-09-13 17:33:33
1178
原创 【车载以太网】【SOME/IP】Wireshark 解析
Dissector.get 的参数原本是 someip ,它的参数和 p_someip = Proto(“someip”, xx) 修改后的名字保持一致就没有问题了。Dissector.get 的参数原本是 someip ,它的参数和 p_someip = Proto(“someip”, xx) 修改后的名字保持一致就没有问题了。Wireshark从3.2版本开始支持SOME/IP,启用相应的插件即可以使用Wireshark解析解析并查看SOME/IP数据。
2024-09-13 11:46:36
2048
原创 Android 版本号、版本名称、api版本对照表
NameAPI LevelAndroid 14U34Android 13T33S32S31R30Q29Pie28Orea27Orea26Nougat25Nougat2423Lollipop22Lollipop2120KitKat19。
2024-01-08 16:53:15
2528
转载 RxJava--入门
前言Rxjava由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。本文主要:面向 刚接触Rxjava的初学者 提供了一份 清晰、简洁、易懂的Rxjava入门教程,涵盖 基本介绍、原理 & 具体使用等 解决的是初学者不理解Rxjava原理 & 不懂得如何使用的问题Carson带你学RxJava系列文章,包括 原理、操作符、应用场景、背压等等,请关注看文章:Android:这是一份全面 & 详细的RxJava学习指南
2023-12-15 10:25:18
155
原创 【AAOS】AOSP和AAOS,向左走还是向右走?
Android Automotive OS(AAOS)和Android Open-Source Project(AOSP)之间存在很多混乱。这两个Android版本经常被混淆使用,但它们代表不同的平台和方法。为汽车In-Vehicle Infotainment(IVI)项目选择的一个将极大地影响所有SW组件的定制和控制以及未来的维护范围。以下是这两个的简要概述及其差异。
2023-09-06 17:21:13
1316
原创 【AAOS】Android Automotive概述
Android Automotive是直接在车载硬件上运行的Android平台,预安装了车机音视频娱乐的应用,以及其他一些第二方以及第三方的Android应用Android Automotive是由Google在2017年推出的Android平台的车载信息娱乐系统(
2023-09-06 17:08:56
1244
转载 Linux Platform驱动模型(一) _设备信息
我在一文中简单介绍了Linux字符设备编程模型,在那个模型中,只要应用程序了相应的设备文件,就可以使用ioctl通过驱动程序来控制我们的硬件,这种模型直观,但是从软件设计的角度看,却是一种十分糟糕的方式,它有一个致命的问题,就是设备信息和驱动代码冗余在一起,一旦硬件信息发生改变甚至设备已经不在了,就必须要修改驱动源码,非常的麻烦,为了解决这种驱动代码和设备信息耦合的问题,Linux提出了platform bus(平台总线)的概念,即使用虚拟总线将。
2023-06-09 11:05:32
210
原创 Spring框架介绍
主流框架Spring SpringMVC SpringBoot SpringCloudSpring(Core)我们说到Spring,一般指代的是SpringFramework,它是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架,为开发者提供了一个简易的开发方式。IOC,它实现了容器对Bean对象的管理、降低组件耦合,使各层服务解耦。 AOP,面向切面编程将程序逻辑分解为称为所谓关注点的不同部分。跨越应用程序多个点的功能称为跨领域问题,这些跨领域问题在概念上与应用程序..
2021-12-09 10:59:53
838
原创 Web即时通信技术 -- 服务器推送技术盘点
介绍Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web即时通讯方案主要有4种:客户端轮询:传统意义上的短轮询(Short Polling) 服务器端轮询:长轮询(Long Polling)Comet技术 全双工通信:WebSocket技术 单向服务器推送:SSE(Server-sent Events)短轮询:脚本发送的http请求轮询:客户端和服务器之间会一直进行连接,每隔一段时间就询问一次(setInterval)特点:连接数会很多,一个接收...
2021-12-01 14:14:46
322
原创 Web即时通信技术 -- Web Socket
WebSocket 是一种网络传输协议,可在单个 TCP 连接上进行全双工通信,位于 OSI 模型的应用层。WebSocket 协议在 2011 年由 IETF 标准化为RFC 6455,后由RFC 7936补充规范。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。优点 在客户端和服务器之间保有一个持有的连接,两边可以...
2021-12-01 14:07:10
3839
原创 Web即时通信技术 -- SSE(Server Sent Event)
SSE是一种可以主动从服务端推送消息的技术。SSE的本质其实就是一个HTTP的长连接,只不过它给客户端发送的不是一次性的数据包,而是一个stream流,格式为text/event-stream。所以客户端不会关闭连接,会一直等着服务器发过来的新的数据流。原理SSE 使用 HTTP 协议,现有的服务器软件都支持。WebSocket 是一个独立协议。 SSE 属于轻量级,使用简单;WebSocket 协议相对复杂。 SSE 默认支持断线重连,WebSocket 需要自己实现。 SSE 一般只用来传
2021-12-01 11:38:18
9786
3
原创 Web即时通信技术 -- 长轮询
原理客户端发送一个请求,服务器会hold住这个请求; 直到监听的内容有改变,才会返回数据,断开连接(或者在一定的时间内,请求还得不到返回,就会因为超时自动断开连接); 客户端继续发送请求,重复以上步骤。长轮询是基于短轮询上的改进版本:主要是减少了客户端发起Http连接的开销,改成了在服务器端主动地去判断所关心的内容是否变化。所以其实轮询的本质并没有多大变化,变化的点在于:对于内容变化的轮询由客户端改成了服务器端(客户端会在连接中断之后,会再次发送请求,对比短轮询来说,大大减少了发起..
2021-11-30 23:44:16
458
原创 Web即时通信技术 -- 短轮询
原理客户端向服务器端发送一个请求,服务器返回数据,然后客户端根据服务器端返回的数据进行处理; 客户端继续向服务器端发送请求,继续重复以上的步骤,如果不想给服务器端太大的压力,一般情况下会设置一个请求的时间间隔。优缺点优点:不需要额外的开发成本,请求数据,解析数据,作出响应,仅此而已,然后不断重复。缺点:不断的发送和关闭请求,对服务器的压力会比较大,因为本身开启Http连接就是一件比较消耗资源的事情; 轮询的时间间隔不好控制。如果要求的实时性比较高,显然使用短轮询会有明显的短板,如果
2021-11-30 23:14:55
841
转载 SpringCloud系列介绍--第一篇:介绍
首先讲一下我为什么要写这一系列的文章,现在网上大量的springcloud相关的文章,使用的springboot和springcloud的版本都相对比较老,很多还是在使用springboot1.x的版本,如果尝鲜想使用springboot2.x的版本,很多配置都和之前的不一样,有了大量的修改,很多刚开始学习的朋友可能试一试搭不起来就放弃了,本系列教程就是帮助刚接触springcloud的朋友简单上手,快速起步。springboot进入2.x以后,历经一年多的修修改改,终于到了2.1.x的版本,相对较为.
2021-11-23 22:14:38
208
转载 SECS/GEM通信的特点和优点(十二)-- GEM 控制状态
什么是GEM 控制状态?GEM板的控制状态是E30 GEM的基本要求之一。它定义了主机和设备之间的协作级别,并指定了操作员如何在不同级别的主机控制状态下进行交互。在半导体工厂中,主机或操作员可以控制设备的加工。双方同时控制设备会带来问题。所以当一方控制设备时,另一方所能进行的操作将受到限制。例如,如果操作员暂停了工艺处理,则不应允许主机发送恢复处理或启动新作业的命令。GEM控制状态就是为了防止此类问题的发生而被建立的。控制状态如何工作?控制状态提供三个基本级别的控制。每个级别都描述了主机
2021-09-27 20:47:44
1670
1
转载 SECS/GEM通信的特点和优点(十一)-- 消息日志
1977年,经典电影《第三类接触》上映。在电影的最后,有一段外星人和人类之间的戏剧性的 “对话”。其中一位科学家说:“我希望有人把这一切都记下来。”他们真正想要的是消息日志!就像软件日志对于应用程序的故障诊断很重要一样,记录工厂主机和生产设备之间的详细消息交互对于故障诊断也很重要。例如,主机发送一个命令,设备根据消息进行操作,但是有些事情并没有如预期的那样工作。将发送给设备的消息和设备的回复的消息与来自设备的其他日志一起查看,非常有助于确定问题位于在哪儿。用于显示/表示已记录消息的格式也非常
2021-09-26 15:27:15
676
gem-0.2.5-src.zip
2021-09-23
E37&E37.1&E37.2.pdf
2020-07-20
SEMI E30&E30.1&E30.5
2020-07-20
SEMI E5-1104 SEMI EQUIPMENT COMMUNICATIONS STANDARD 2 MESSAGE CONTENT (SECS-II)
2020-07-20
SEMI E4-0699.pdf
2020-07-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人