自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学而不思则罔 思而不学则殆

  • 博客(59)
  • 资源 (1)
  • 收藏
  • 关注

原创 (四)CarPlay集成开发之无线连接

上一篇写了CarPlay有线开发中的一些依赖,相比有线连接,无线连接的开发工作可能会比较简单一些, 主要的开发工作有如下内容。

2024-03-02 15:53:34 2434 4

原创 (三)CarPlay集成开发之有线连接

基于usb gadget开发驱动,开发f_iap2.c用来扩展usb的interface来支持iAP2通讯android平台,需要修改init.rc来开机拉起mdnssd进程,配置sys.usb.config功能项来让configfs响应我们的usb function 配置修改网络路由,修改selinux权限,修改/dev/bus/usb/* 权限等等CarPlay应用需要访问f_iap2.c中提供的/dev/iap2中的设备节点,来进行iAP2数据的收发。

2024-02-22 19:46:58 2565 9

原创 (二)CarPlay集成开发之苹果的iAP协议

这一篇文章主要简单介绍了iAP2协议的包协议,鉴权流程,以及CarPlay通信过程中所用到的几个iAP2 Message ID的功能,了解iAP2协议是开发苹果外设的基础。CarPlay主要使用iAP2会话包来在无线连接过程中进行AP信息的交换。iAP2协议是由苹果公司定义的一种数据通信协议,主要用于苹果设备认证外设,以及与外设数据交换的一种协议。以下是一个正常的鉴权流程中,iAP2协议的通信流程。

2024-01-20 11:23:30 3638 2

原创 手车互联专栏背景

本系列文章主要是以市面上常见的几种手车互联项目来介绍,分别为苹果的CarPlay, 谷歌的Android Auto, 华为的HiCar, 以及百度的CarLife和CarLife+在Android车机端的集成。最近忙着做公司的事情,断更有一段时间了;之前从事过几年的手车互联开发,一直想着把这部分经验转化成文字记录下来,2024年伊始,终于给自己找点空隙来把这部分工作完成吧。

2024-01-03 19:24:05 799

原创 基于rk3568方案的Android系统can bus通信开发

can通信广泛应用在车载各个设备的通信上,本文主要介绍一种场景下的can通信开发:Android设备如何通过Can网卡来与总线中的其他设备进行通信/*** Can设备封装类*/public://打开can设备//发送can报文//关闭can设备//设置can报文数据监听器//获取回调接口private://每次下发2帧报文rk3568提供了硬件以及底层驱动支持上层直接通过linux标准的can网卡读写接口去获取can总线数据,在通信启动前,可以通过。

2023-09-18 10:49:20 1699

原创 使用canoe回放can日志

这里主要记录一下如何使用canoe来分析can总线的信号步骤, 方便我这种非系统工程师职能的工程师分析can信号表现。

2023-09-05 19:26:06 4289

原创 (四) 10分钟搞定fidl语法

本片文章主要用来介绍CommonAPI中的接口描述语言fidl与fdepl文件的基本语法。可以指定取值范围的整形在fidl中可以定义如下:最后通过CommonAPI转成的是如下的属性类型:数组类型,在fidl中存在两种定义模式,一个是显示定义,一个是隐式定义,显示定义可以指定数组名称,如下:通过CommonAPI转换后,会生成如下:当然也可以隐式的直接定义,如下:这样子,就不会存在typedef去重命名数据类型了,生成代码如下:枚举类型转换后的代码也可以指定值转成代码:enumer

2023-08-15 16:59:17 1537

原创 (三) 搞定SOME/IP通信之CommonAPI库

本章主要介绍在SOME/IP通信过程中的另外一个IPC通信利剑,CommonAPI库,文章将从如下几个角度让读者了解什么是CommonAPI, 以及库在实际工作中的作用。

2023-08-14 19:19:12 3880

原创 protobuf的下载与编译

【代码】protobuf的下载与编译。

2023-07-25 17:27:22 666

原创 android fwk模块之Sensor架构

android sensor架构 sensor

2023-02-14 16:27:52 1842

原创 vsomeip源码梳理 -- Event订阅流程

vsomeip request_event subscribe

2022-10-09 15:02:47 4955 4

原创 vsomeip源码梳理 -- OfferService流程

vsomeip源码

2022-08-09 20:42:19 4095 2

原创 c++中的enum class强转

enum class

2022-08-04 19:05:41 986

原创 template关键字

c++ 泛型

2022-08-04 19:03:10 445

原创 mmap文件内存映射

mmap

2022-08-04 18:59:41 535

原创 C++中的bind与function

std::bind function

2022-08-04 18:55:46 437

原创 C++中的左值与右值

C++左值 右值

2022-08-04 18:52:56 1018

原创 Android应用内组件通讯之EventBus源码分析之post流程(三)

eventbus源码

2022-08-04 16:21:42 628

原创 Android应用内组件通讯之EventBus源码分析之初始化与订阅(二)

EventBus 源码分析

2022-08-03 19:29:24 596

原创 Android应用内组件通讯之EventBus的使用(一)

eventbus

2022-07-31 15:55:19 1676

原创 vsomeip源码梳理 -- application初始化

SOME/IP vsomeip

2022-07-25 11:37:08 3948 2

原创 (二)车载以太网通信中间件 -- 使用vsomeip实现双机通讯

vsomeip

2022-07-18 11:58:48 8952 30

原创 (一) 车载以太网通信之SOME/IP协议

SOMEIP someip SOME/IP vsomeip 以太网通信

2022-06-28 20:00:01 10590 7

原创 android开发之jetpack库(2.数据库管理之android room)

android Room

2022-04-27 14:02:31 438

原创 使用Android Studio开发Native应用

Android Studio NDK开发 一直以来,在开发Android应用的过程中,时常需要接触许多使用C/C++编写的开源库,传统方式之前都是在虚拟机中使用ubuntu环境,或者Android源码环境编译成库之后,再拷贝到应用中来引用。最近发现使用Android Studio来进行NDK开发还是挺方便的,在此总结一下日常工作过程中使用Android Studio开发native应用相关的一些常见知识点,帮助自己系统性的巩固该方面的知识点,全文大纲如下: ![在这里插入图片描述](https

2022-03-28 19:48:50 2290

原创 android开发之jetpack库(1.架构组件)

题记最近由搞framework又转到应用跟中间件来了,在写了几个小型工具型应用之后,逐渐从技术方面思考,对Android开发来说,什么样的应用才能算是高质量的应用,一个高质量的应用应该具有哪些特点? 目前我所想到的有以下几点:拥有适合业务方向的开发框架高度解耦的模块漂亮的coding风格符合开闭原则运行稳定上述特点除第6之外,其余均属于在软件设计阶段就需要完成的工作;而运行稳定则是我们在开发过程中需要考虑的事情,影响一个Android应用稳定的因素有很多,常见的如oom导致系统应用cras

2020-10-09 20:39:30 421

原创 Android 9.0 AutoMotive模块之CarService

上一篇对Automotive模块的Vhal作了总结,本篇文章主要从上层CarService的实现来构析Automotive所提供的功能。 这里主要从以下几点进行源码解读。CarService功能解析权限定义与检查CarService与Vhal通信模拟器的创建与使用附录:权限定义表CarService是一个拥有最高优先级的应用服务,它的的源码在 packages/services/Car 目录下面,这个目录下存在许多的工程,这里我们只关心service这个文件夹,service下包含了CarService

2020-08-27 21:06:23 8986

原创 google Base 128 Varints编码

最近学习protobuf编解码的时候,有了解到varints这块概念,记录于此原文介绍地址:https://developers.google.com/protocol-buffers/docs/encoding#varintsvarints是用一个或者多个byte序列化整数的方法,它的优点是整型数据的值越小,编码后所用的字节数越小. varint中的每个byte的bit位都有一个最高有效位,最高有效位用来表示这个byte之后是不是还有byte需要解析,后7位用来表示int值的二进制补码。低位组

2020-07-27 20:47:20 1688

原创 Mokee android 10.0代码下载编译总结

Mokee代码下载mokee下载mokee编译过程问题做android framework开发也有很多年了,一直都是在公司里面下载编译,最近因为自己有个小需求想要实现,因此想着自己下载一个aosp的代码来修改实现,一番查询之后,了解到mokee这个项目,因此决定自己动手,制作rom定制需求,下面是我在整个源码下载,编译的一个流程,以及遇到的问题总结,如果哪位同仁有相关的需求需要实现,希望如下经验可以帮到你mokee下载mokee的代码开源托管在github上,其他aosp的代码,我们需要从google

2020-06-28 11:18:33 2827 6

原创 Android 9.0 AutoMotive模块之Vehicle

Vehicle模块简介架构功能流程简介借助各种总线拓扑,很多汽车子系统都可以实现互连以及与车载信息娱乐 (IVI) 系统的连接。不同的制造商提供的确切总线类型和协议之间有很大差异(甚至同一品牌的不同车型之间也是如此),例如控制器区域网络 (CAN) 总线、局域互联网络 (LIN) 总线、面向媒体的系统传输 (MOST) 总线以及汽车级以太网和 TCP/IP 网络(如 BroadR-Reach)。Android Automotive 的硬件抽象层 (HAL) 为 Android 框架提供了一致的接口(无需

2020-06-24 15:55:10 14038 6

原创 高通平台Android 7.0屏蔽彩信发送功能

android\packages\providers\TelephonyProvider\AndroidManifest.xml替换该文件中关于 sms, mms, sms-mms 的 android:readPermission="android.permission.READ_SMS 为android:readPermission="android.permission.CANNT_R...

2019-12-16 17:15:46 701

原创 Android 7.0预制应用为可卸载

最近在做CTA认证的时候有个需求,需要预制两个应用为可卸载的方式,且恢复出厂设置之后,可以重新安装。思路:预制应用需要编译输出在/system/preinstall目录系统首次运行的时候,需要通过脚本将输出的apk拷贝到/data/app目录应用编译输出到指定目录,通过在Android.mk文件中添加如下字段实现:LOCAL_MUDULE_PATH := $(PRODUCT_OUT)...

2019-12-03 19:39:12 1322

原创 Android.mk遍历目录下所有的源文件

//源路径C_FILE_PATH := $(LOCAL_PATH)//不需要编译的具体文件路径C_FILE_EXCLUDE := $(LOCAL_PATH)/a.c \ $(LOCAL_PATH)/sub_dir/b.cpp \define walkfile $(wildcard $(1)) $(foreach e, $(wildcard $...

2019-11-21 19:39:46 1203

原创 Android Handler消息队列的实现原理

我们在写Android程序的时候,有经常用到Handler来与子线程通信,亦或者是用其来管理程序运行的状态时序。Handler其是由Android提供的一套完善的操作消息队列的API。它既可以运行在主线程中,也可以运行在子线程中,唯一的区别是其内部的Looper对象不同。在这里我将对Android中Handler消息队列的实现进行一个总结,以便深入了解其原理并且巩固其使用方式。本系列的主要内容如...

2019-08-16 11:18:16 3934

原创 Android程序优化知识点总结

影响Android应用程序性能的,主要从两个方面看,一个是内存,一个是CPU使用率。这篇文档主要是记录一下自己在开发过程中的一些经验,以及学习官方发布的性能优化指导的总结。内容主要是以下几点:Android 应用程序的内存分配内存泄漏原因以及常见场景内存使用优化以及Android原生容器常见工具与命令Android应用程序的内存分配,与java类似,都是由虚拟机划分。主要分为以下几...

2019-08-12 19:01:39 247

原创 Android系统升级全流程

Recovery模块总结(正常模式下,升级的处理流程)前段时间负责公司项目的系统升级模块开发,在开发过程中,对整个升级流程有个基本的了解,现在此做一个阶段性的总结,方便日后查阅。项目基于高通Android 7.0.1实现, 主要有以下内容:正常模式下,升级的处理流程Recovery模式下,升级处理流程完整包与增量包的制作其他模块的升级(单片机)Recovery的UI显示基本概念...

2019-04-22 17:11:21 6634

原创 串口通信的概念与实现

串口通讯 安卓串口通讯

2018-09-01 14:24:28 7718

原创 CarLife开发总结

CarLife开发总结百度CarLife是百度推出的车联网解决方案之一,目前分为前装集成与后装安装两种方式提供准备资料前装项目申请:http://carlife.baidu.com/carlife/caroem/myproj 前装项目申请完成后,得到一个百度渠道号与集成资料 后装源码地址:https://github.com/ApolloAuto/apollo-Duer...

2018-08-18 14:30:20 15659 13

原创 USB开发------android AOA开发

android AOA开发Android从3.1版本可开始引进了对AOA的支持,这是一种允许外部USB硬件与Android设备进行交互的特殊Accessory模式。当一个Android设备处于Accessory模式的时候,已连接的配件则扮演Host的角色(负责给总线供电并且枚举设备),而Android设备则扮演USB device的角色。Android USB配件是一个专门设计的附加到Andr...

2018-08-05 21:15:37 8453 1

原创 android使用MediaCodec实现异步视频编解码

android使用MediaCodec实现异步视频编解码最近在做屏幕投影的项目中需要对H.264的视频流做解码播放显示,项目基于Android 7.0的系统,虽然android系统已经提供了一套以MediaCodec为核心的硬解码实现方案。但是在实际运用过程中,遇到许多问题,在这里进行一个总结,方便自己以后查阅,主要涉及以下内容:TextureView与SurfaceViewMedia...

2018-07-29 21:53:06 20099 23

碰撞球安卓小游戏

可以直接运行在eclipse中,游戏比较简单,但是包含了基本的游戏理念,希望对你有帮助

2014-11-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除