上一篇文章其实已经找到了问题的原因,获取硬件 P2P 接口失败导致 P2P 功能不可用,但是在 Log 中还发现了一个奇怪的现象:
D WifiP2pService: Wifi enabled=true, P2P Interface availability=true, Numberof clients=1
D WifiP2pService: Wifi enabled=true, P2P Interface availability=true
D WifiP2pService: Wifi enabled=true, P2P Interface availability=false
就是上面的 Log 不断的循环显示,单独显示逻辑前面的文章已经分析了,频繁的循环显示通过 Log 分析可以看到下面内容:
D WifiP2pNative: P2P InterfaceAvailableListener true
因此猜测循环处理 P2P 逻辑与这部分 Log 有关,在 WifiP2pNative 中查找相关内容进行分析。
一、P2P开启分析
1、WifiP2pNative
源码位置:/frameworks/opt/net/wifi/service/java/com/android/server/wifi/p2p/WifiP2pNa