Android JellyBean和P2P支持

时间:2014-05-12 10:22:41

标签: android wifi wifi-direct

我正在分析Android JellyBean 4.3源代码。我可以在HAL层找到varialbe p2p_supported以支持Wi-Fi Direct。在以下来自wifi_ath.c的代码片段中

int wifi_start_supplicant(int p2p_supported) {

if (p2p_supported) 
  {
    strcpy(supplicant_name, P2P_SUPPLICANT_NAME);
    strcpy(supplicant_prop_name, P2P_PROP_NAME);  // for P2P support
    .......................
   }
    else {
    strcpy(supplicant_name, SUPPLICANT_NAME);
    strcpy(supplicant_prop_name, SUPP_PROP_NAME); //for station support
       }

宏的值是:

P2P_SUPPLICANT_NAME = p2p_supplicant ,P2P_PROP_NAME= init.svc.p2p_supplicant
SUPPLICANT_NAME=wpa_supplicant ,SUPP_PROP_NAME=init.svc.wpa_supplicant

即使在站点模式下连接,如果部分正在执行,我也无法启动WiFi。在代码中,启用和禁用了p2p_supported变量,以便P2P和Wi-Fi都能顺利运行?

1 个答案:

答案 0 :(得分:0)

从Jelly Bean(4.1)开始,您只需打开WiFi即可使用WiFi Direct功能,但两者一起使用取决于您的芯片是否支持它。(请参阅this SO问题)