我正在开发一个需要获取互联网IP的android应用程序。是否可以在不调用外部服务器的情况下获得Internet IP?
如果可能的话,如何在不提出其他网络请求的情况下获取Internet IP?
答案 0 :(得分:3)
如果不向外部服务器发出请求,您将可能无法获取公共IP地址,因为您的设备位于局域网内,因此它并不在乎路由器的公共IP地址,因为它不会不需要!
我建议您使用http://checkip.amazonaws.com/之类的网络服务来满足您的需求。
URL getIP = new URL("http://checkip.amazonaws.com/");
BufferedReader getIPReader = new BufferedReader(new InputStreamReader(getIP.openStream()));
System.out.println(getIPReader.readLine()); // prints the IP