vSOME/IP与ETAS DSOME/IP通信的问题解决方案
✅ 一、服务版本不匹配导致 Handover 问题 —— 需要更新 VSOMEIP 代码逻辑
📌 问题描述:
在 SOME/IP 通信中,发布者(offer)与订阅者(subscribe)之间存在服务版本不一致的问题,导致 Handover(切换)失败。
✅ 解决方案:
需要在 offer_service
和 subscribe
接口中显式指定服务的主版本号(Major)和次版本号(Minor),以确保双方使用相同的版本进行匹配。
🔧 示例代码修改如下:
发布端(Publisher)
void offer() {std::lock_guard<std::mutex> its_lock(notify_mutex_);
- app_->offer_service(SAMPLE_SERVICE_ID, SAMPLE_INSTANCE_ID);
+ app_->offer_service(SAMPLE_S