4
我想獲得的WiFi熱點IP地址(從另一臺計算機),Android設備連接通過WiFi,不是IP本地的Android。我在真實設備上運行應用程序。 我可以掃描所有的wifi並獲取它們的名稱。從Android的熱點IP獲取IP
public class WifiConnectorActivity extends Activity {
TextView mainText;
WifiManager mainWifi;
WifiReceiver receiverWifi;
List<ScanResult> wifiList;
StringBuilder sb = new StringBuilder();
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mainWifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
mainText = (TextView) findViewById(R.id.text);
mainWifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
receiverWifi = new WifiReceiver();
if(!mainWifi.isWifiEnabled()){
mainWifi.setWifiEnabled(true);
}
registerReceiver(receiverWifi, new IntentFilter(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
mainWifi.startScan();
mainText.setText("\nStarting Scan...\n");
}
class WifiReceiver extends BroadcastReceiver {
public void onReceive(Context c, Intent intent) {
StringBuilder sb = new StringBuilder();
wifiList = mainWifi.getScanResults();
for(int i = 0; i < wifiList.size(); i++){
sb.append(new Integer(i+1).toString() + ".");
sb.append((wifiList.get(i)).toString());
sb.append("\n");
}
mainText.setText(sb);
}
}
}
當然,我可以得到IP本地使用此代碼:
public static String getLocalIpAddressString() {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
} catch (Exception ex) {
Log.e("IPADDRESS", ex.toString());
}
return null;
}
例如,我可以看到IP本地的Android設備是192.168.2.101,但如何讓無線網絡的IP代碼中的熱點是192.168.2.1。 謝謝!
謝謝!但問題是我必須使用套接字來連接它,除非我有一個IP地址,我不知道該怎麼做(我嘗試使用wifi名稱,但它不起作用)你有什麼建議嗎? – R4j
連接到它什麼? – Brad
通過無線連接遠程連接PC(例如關機,重啓,遠程PowerPoint幻燈片...)。我試圖使用靜態IP的android devide(如上)和PC來測試。有效。問題是我不知道如何從代碼獲取PC的IP。 – R4j