Android Debugging InetAddress.isReachable
- by badMonkey
I am trying to figure out how to tell if a particular ipaddress is available in my android app during debugging ( I haven't tried this on an actual device ).
From reading it appears that InetAddress.isReachable should do this for me.
Initially I thought that I could code something like:
InetAddress address = InetAddress.getByAddress( new byte[] { (byte) 192, (byte) 168, (byte) 254, (byte) 10 );
success = address.isReachable( 3000 );
This returns false even though I am reasonably sure it is a reachable address.
I found that if I changed this to 127, 0, 0, 1 it returned success.
My next attempt was same code, but I used the address I got from a ping of www.google.com ( 72.167.164.64 as of this writing ). No success.
So then I tried a further example:
int timeout = 2000;
InetAddress[] addresses = InetAddress.getAllByName("www.google.com");
for (InetAddress address : addresses)
{
if ( address.isReachable(timeout))
{
success = true; // just set a break point here
}
}
I am relatively new to Java and Android so I suspect I am missing something, but I can't find anything that would indicate what that is.