• 10-QNX与Android双系统通讯之FDBUS(1)


    1. 前言

    TODO

    2. 交叉编译(QNX与Android)

    TODO

    2.1 下载资源

    FDBUS下载V5.4版本:

    gitee:  

    fdbus: Fast Distributed Bus (FDBus) - Gitee.com

    csdn:

    fdbus-v5.4.0 

    PROTOBUF 下载3.20 CPP版本:

    github: 

    https://github.com/protocolbuffers/protobuf/releases/tag/v3.20.2

    github镜像

    Release Protocol Buffers v3.20.2 · protocolbuffers/protobuf · GitHub

    csdn:

    protobuf-v3.20.2 

    2.2 编译

    前面博文有专门摘录编译脚本

    FDBUS NDK与QNX交叉编译

    3. 实操

    3.1 将编译后的文件分别推送到Android与QNX

    3.1.1 ADB push推送到Android

    1. adb root
    2. adb shell mkdir -p data/fdbus
    3. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\fdbxclient data/fdbus/
    4. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\fdbxserver data/fdbus/
    5. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\name_server data/fdbus/
    6. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\lshost data/fdbus/
    7. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\lssvc data/fdbus/
    8. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\host_server data/fdbus/
    9. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\logsvc data/fdbus/
    10. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\logviewer data/fdbus/
    11. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\lsclt data/fdbus/
    12. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\lsevt data/fdbus/
    13. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\bin\ntfcenter data/fdbus/
    14. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\lib\libfdbus.so data/fdbus/
    15. adb push Z:\workspace\thirdlibs\fdbus-v5.4.0\build\android\install\usr\lib\libfdbus-clib.so data/fdbus/
    16. adb push Z:\workspace\thirdlibs\protobuf-3.20.2\build\android\install\lib\libprotobuf.so data/fdbus/

    3.1.2 通过ADB Shell 用busybox ftpput 推送到QNX

    1. busybox ftpput -u root 192.168.1.1 /data/fdbus/fdbxserver
    2. busybox ftpput -u root 192.168.1.1 /data/fdbus/fdbxclient
    3. busybox ftpput -u root 192.168.1.1 /data/fdbus/name_server
    4. busybox ftpput -u root 192.168.1.1 /data/fdbus/lshost
    5. busybox ftpput -u root 192.168.1.1 /data/fdbus/lssvc
    6. busybox ftpput -u root 192.168.1.1 /data/fdbus/host_server
    7. busybox ftpput -u root 192.168.1.1 /data/fdbus/logsvc
    8. busybox ftpput -u root 192.168.1.1 /data/fdbus/logviewer
    9. busybox ftpput -u root 192.168.1.1 /data/fdbus/lsclt
    10. busybox ftpput -u root 192.168.1.1 /data/fdbus/lsevt
    11. busybox ftpput -u root 192.168.1.1 /data/fdbus/ntfcenter
    12. busybox ftpput -u root 192.168.1.1 /data/fdbus/libfdbus-clib.so
    13. busybox ftpput -u root 192.168.1.1 /data/fdbus/libcommon_base.so
    14. busybox ftpput -u root 192.168.1.1 /data/fdbus/libfdbus.so
    15. busybox ftpput -u root 192.168.1.1 /data/fdbus/libprotobuf.so

    3.2 设置环境变量:

    export LD_LIBRARY_PATH=/data/fdbus:$LD_LIBRARY_PATH

    两个系统都需设置

    3.3 实际操作

    3.3.1 QNX启动服务

    #cd /data/fdbus

    # ./name_server &

    # ./host_server &

    # ./fdbxserver &

    3.3.2 Android启动服务

    #cd /data/fdbus

    # ./name_server -u tcp://192.168.1.1:60000 -n android &

    # ./fdbxclient &

    查看接口状态可以通过 ./lssvc来查看 

    3.3.3  测试结果:

    4  总结

    综上,跨系统通讯FDBUS Demo例程算是基本掌握了。

    后面就是如何在FDBUS基础上进行二次开发,定制化开发,让它进化满足产品要求。

  • 相关阅读:
    多数据源管理:掌握@DS注解的威力
    2023-2024年华为ICT网络赛道模拟题库
    策略模式结合Spring使用
    【LeetCode】【剑指offer】【n个骰子的点数】
    设置单元格格式无效,Excel中删除某列的千分位符号
    【Mysql】 InnoDB引擎深入- 行溢出
    掌控未来,爱普生SR3225SAA用于汽车钥匙、射频电路的智慧引擎
    567个!最常用的英语动词短语搭配汇总大全!
    渗透测试信息收集方法笔记
    互联网大厂面试必问的40个SpringBoot面试题【建议收藏】
  • 原文地址:https://blog.csdn.net/liaochaoyun/article/details/127817247