有的手机型号,屏蔽了广播和组播,其他设备发出的广播和组播,它接收不到。它本身则可以发送广播和组播。
如果两部这样的手机,由于都不能接收到广播,则会导致永远不能发现对方。
如果一部这样的手机,一部DTB,则:
DTB先启动,手机后启动,双方都能及时发现对方;
手机先启动,DTB后启动,则过一段时间(小于手机上dmc M-SEARCH频率间隔),手机会发现DTB上的设备;
过一段时间(小于手机上device NOTIFY频率间隔),DTB会发现手机上的设备。
Bubble存在同样的问题。后来又查看了几款dlna,也都存在同样的问题。通过抓包分析,终于发现了该问题。
注:三合一版本在启动时,dmc会发M-SEARCH,device会发NOTIFY。