本文主要讲述在Android设备上增加WFD的UIBC反控制功能,因为公司最近需要此功能,本人经过半个多月的研究;总于实现此功能。此功能可以实现三星手机反控以及两台root开源的Android设备反控。
工具/原料
AndroidStudio
eclipse
方法/步骤
1、如果你的Android设备只做sink瞿搋村乇端,那么只需要修改你WiFiDisplay接收app里的代码就可以了。如果你的Android设备也做source端,那么你统潇瘵侃就还需要修改framework中的代码。不多说废话了,看下面的步骤吧。
2、修改文件:frameworks漆虱忧甘/av/media/libstagefright/wifi-display/source/WifiDisplaySource.cpp。source端发送的M3消息蒗钰妒蟥中增加wfd_uibc_capability:
3、source端发送的M4消息中设置UIBC的参数:
方法/步骤2
1、sink端代码对应的文件是应用WifiDisplay里的,很多方案公司都会自带,一般会命名为WifiDisplaySink.cppsink端onGetParameterRequest中应答M3消息中设置UIBC参数:
2、sink端在onSetParameterRequest中的应答M4消息中获取UIBC端口号
3、p2p连接成功后source端开启socket服务端,sink端开启socket客户端。