2015-10-20 79 views
1

我有Android客戶端和服務器都在我的本地PC上運行。我的客戶端是eclipse中的一個活動(項目),而我的服務器是同一臺PC上的jar文件。我使用模擬器作爲客戶端,並使用Wi-Fi或有時使用LAN連接到服務器。我配置我的客戶端IP由ipconfig獲得,所以它是本地環境。 (當通過Wi-Fi連接時,我使用WLAN IP和LAN,我使用eth0)。Android監控網絡使用情況

我正在監視客戶端發送和接收的數據rx,tx。我用這:

int uid = android.os.Process.myUid(); 
long tx=TrafficStats.getUidTxBytes(uid); 
long rx=TrafficStats.getUidRxBytes(uid); 

我總是得到這個rxtx值作爲每個-1

我也使用這段代碼:

String info = ""; 

      info += "Mobile Interface:\n"; 
      info += ("\tReceived: " + TrafficStats.getMobileRxBytes() + " bytes/" + TrafficStats.getMobileRxPackets() + " packets\n"); 
      info += ("\tTransmitted: " + TrafficStats.getMobileTxBytes() + " bytes/" + TrafficStats.getMobileTxPackets() + " packets\n"); 

      info += "All Network Interface:\n"; 
      info += ("\tReceived: " + TrafficStats.getTotalRxBytes() + " bytes/" + TrafficStats.getTotalRxPackets() + " packets\n"); 
      info += ("\tTransmitted: " + TrafficStats.getTotalTxBytes() + " bytes/" + TrafficStats.getTotalTxPackets() + " packets\n"); 

      Log.d("hi", "Netwrk" + info); 

我越來越TrafficStats.getMobileRxBytes()TrafficStats.getMobileTxBytes()0TrafficStats.getTotalRxBytes()TrafficStats.getTotalTxBytes()每個-1

爲什麼那個-1總是?是否因爲客戶端(模擬器)和服務器都在同一臺PC?

回答