um für meinen EMailClient herauszufinden, ob eine Internetverbindung besteht, habe ich folgende kleine Mehode:
public boolean isWWW()
{
try
{
Socket sock = new Socket("www.spiegel.de", 80);
sock.close();
}
catch (IOException e)
{
System.err.println(e.toString());
return false;
}
return true;
}
BESCHREIBUNG: wird die seite "www.spiegel.de" über Port 80 gefunden, besteht eine verbindung. sonst eben nicht.
PROBLEM:
will man eine Mail verschicken und ist offline, gibts die Meldung "Bitte ins Internet einwählen." Soweit OK!
Aber wählt man sich DANN ins internet ein noch während der EMailClient läuft, wird wiederum die gleiche Exception geschmissen, wie wenn keine Verbindung besteht, obwohl man ja nun Online ist.
Irgendwie so, als wenn das Socket irgendwie nicht freigegeben wird, oder so. Schließen kann ich das Socket nicht, da nur dann ein Socket entsteht, wenn die Adresse gefunden wird. Sonst ist es "null".
Jemand eine Lösung ?