润小云解读鸿蒙OS系列(五):分布式软总线之discovery_service
discovery_service提供了设备的发布接口。 鸿蒙OS支持的设备 discovery\discovery_service\include\common_info_manager.h中,定义了目前鸿蒙OS支持的设备类型和设备级别,从定义不难看出,目前鸿蒙OS只支持L0和L1的设备。 这里要补充一下,由于L0的设备不支持多线程并且只支持轻量级的TCP/IP协议,因此在涉及多线程和网络通信的代码,多会看到如下的条件编译语句: 上述条件编译表示其中到代码是专门为L0设备提供的。 上述条件编译表示其中代码是专门为L1设备提供。 用户使用发现功能时,需要保证发现端设备与被发现端设备在同一个局域网内,并且互相能收到对方以下流程的报文。 (1)发现端设备,发起discover请求后,使用coap协议在局域网内发送广播。 (2)被发现端设备使用PublishService接口发布服务,接收端收到广播后,发送coap协议单播给发现端。 (3)发现端设备收到报文会更新设备信息。 下面是设备的定义,分为本地设备(被发现端设备)和外部设备,从中不难看出鸿蒙OS的分布式特性,本地设备可以通过P...