我正在開發android 2.1中的應用程序,我想顯示外部IP。我怎麼能這樣做?提前致謝。Android獲取外部IP
1
A
回答
14
public void getCurrentIP() {
ip.setText("Please wait...");
try {
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet("http://ifcfg.me/ip");
// HttpGet httpget = new HttpGet("http://ipecho.net/plain");
HttpResponse response;
response = httpclient.execute(httpget);
//Log.i("externalip",response.getStatusLine().toString());
HttpEntity entity = response.getEntity();
if (entity != null) {
long len = entity.getContentLength();
if (len != -1 && len < 1024) {
String str=EntityUtils.toString(entity);
//Log.i("externalip",str);
ip.setText(str);
} else {
ip.setText("Response too long or error.");
//debug
//ip.setText("Response too long or error: "+EntityUtils.toString(entity));
//Log.i("externalip",EntityUtils.toString(entity));
}
} else {
ip.setText("Null:"+response.getStatusLine().toString());
}
}
catch (Exception e)
{
ip.setText("Error");
}
}
1
我不認爲有辦法以編程方式執行它,但你可以調用一個像http://www.whatismyip.com/這樣的站點,然後從頁面中去除IP。您可能希望找到提供API並支持第三方調用的網站。
2
http://api.externalip.net/ip將返回你的IP在簡單的API格式
您可以在此處詳細瞭解獲得外部IP:http://www.externalip.net/api
-2
看看這個代碼片段:
String ipAddress = null;
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()) {
ipAddress = inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {
ex.printStackTrace();
}
Log.e("IP ADDRESS:", ipAddress);
+0
獲取本地IP而非外部IP – inVINCEable 2014-12-22 18:32:37
相關問題
- 1. 獲取外部IP
- 2. 在Java中獲取'外部'IP地址
- 3. 獲取外部IP地址10
- 4. Android - 從外部獲取onActivityResult
- 5. 獲取非HTTP流量到OpenShift Origin(入口IP /外部IP)?
- 6. Sinatra外部IP
- 7. 從Android的熱點IP獲取IP
- 8. Android 4.0.3獲取本地IP
- 9. Android獲取外部UI組件句柄
- 10. Android訪問獲取外部目錄
- 11. 獲取例外:在Android小部件
- 12. 獲取外部SD卡在Android手機
- 13. 在Android中獲取外部SDCard位置
- 14. 在3G的Android RTSP使用外部IP
- 15. 如何從Java中Ping外部IP Android
- 16. 如何獲得外部IP成功
- 17. 我如何獲得我的外部/ IP?
- 18. 獲取外部CGRect
- 19. C#TcpListener外部IP
- 20. Gcloud,Relase外部IP
- 21. 如何使用node.js獲取我的外部IP地址?
- 22. 如何在目標c中獲取外部IP
- 23. 使用kubectl或kubernetes API來獲取服務的外部IP
- 24. 如何在局域網中獲取外部IP地址?
- 25. 使用Python獲取計算機的外部IP地址
- 26. 如何在Python中獲取套接字的外部IP?
- 27. 從http://www.whatismyip.com/automation/n09230945.asp使用Adobe AIR獲取外部IP
- 28. 獲取主機的所有外部IP地址
- 29. 如何在Delphi中獲取外部(公共)IP
- 30. 如何在C++中獲取外部IP地址?
你認爲什麼是「外部」IP地址? – Squonk 2011-05-20 21:09:31