2013-02-17 60 views
13

我需要測量兩個Android手機之間的Wi-Fi Direct信號(RSSI信號)。 我該怎麼做?Android Wi-Fi Direct讀取rssi信號強度

+0

你有沒有發現這方面的任何解決方案? – ntrx 2016-01-18 18:32:43

+0

你需要什麼方法來獲得WiFi或其他的RSSI? – 2016-01-21 12:11:26

回答

1

在您的活動類中創建一個廣播接收器類,當RSSI的強度發生變化時執行一些操作(在變量中顯示一些消息/存儲)。這是可以做到如下:

public class myReceiver extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) 
    { 
     String myAction = intent.getAction(); 
     if (myAction.equals(WifiManager.RSSI_CHANGED_ACTION)) 
     { 
      manageNewRssi(intent.getIntExtra(WifiManager.EXTRA_NEW_RSSI,0)); 
     } 
    } 
} 

manageNewRssi是,你必須定義一個方法,它確實需要的任務。

+0

你確定這是Wi-Fi Direct嗎?我認爲這是普通的Wi-Fi! – noor 2013-02-24 16:43:17

+0

@ alsadi90對於遲到的回覆感到抱歉! 你說得對。實際上,早些時候我認爲WiFi和WiFi直接的RSSI信號強度必須相同,但現在看起來並非如此。 Android在Linux上工作,您可能必須使用一些命令行參數來獲取WiFi-Direct的RSSI。看看[這裏](http://android.stackexchange.com/questions/40821/how-to-measure-the-rssi-strength-signal-between-peers-using-wifi-direct) – 10101010 2013-04-13 11:23:27

0

直到當前版本的Android(v4.2.2 r1),WiFi Direct的RSSI才被硬編碼。

Link