王艳玲 发表于 2015-10-1 07:05:31

获取wifi信号强度

  一般有两种方法获得wifi信号强度:
  第一种:WLAN Management API,详细说明见:http://wiki.forum.nokia.com/index.php/WLAN_Management_API
  第二种:利用 RConnectionMonitor 类。
  
  第一种方法需要安装模拟器插件才能调试,不太方便使用,因此,使用第二种。下面说明怎样用第二种方法。
  //connect
  RConnectionMonitor monitor;
   monitor.ConnectL();
   CleanupClosePushL(monitor);
   TRequestStatus status;
   TInt iSignalStrength;
  

  //get all wifi packets
   TPckgBuf<TConnMonNetworkNames> pkgNetworks;
   monitor.GetPckgAttribute(EBearerIdWLAN, 0, KNetworkNames, pkgNetworks, status);
   User::WaitForRequest(status);
   TInt packetCount = pkgNetworks().Count();
  
  //find ssid in packets
  TBuf16<36> ssid16;
   ssid16.Copy(pkgNetworks().iNetwork.iName);
  

  //get signal strength
  iSignalStrength = (TInt) pkgNetworks().iNetwork.iSignalStrength;
页: [1]
查看完整版本: 获取wifi信号强度