Hi,
Ich habe eine kleine Server Client Anwendung mit Android geschrieben, wo der Client auf dem Handy(Motorola Pro Android 2.2) und der Server auf meinem Homecomputer läuft.
Der Datenaustausch funktioniert, aber nur, wenn ich auf dem Handy WLan aktiv habe. Da die App aber auch über ne HandyInternetFlat laufen soll, wäre meine Frage, was hab ich falsch gemacht?;)
Java
public class Client {
private Socket server;
private int timeOut;
private PrintWriter outputStream;
private String IP;
private int PORT;
private ClientActivity hauptfenster;
public Client(ClientActivity hauptfenster)
{
this.hauptfenster=hauptfenster;
}
/**
* InitServer
*
* @throws SocketException
*/
public void starteSever() {
try {
server = new Socket(IP, PORT);
} catch (UnknownHostException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
showMessage("Fehler, Konnte Client nicht finden!");
e1.printStackTrace();
}
if (server == null) {
showMessage("Fehler, konnte keine Verbindung aufbauen!");
} else {
try {
server.setSoTimeout(timeOut);
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
outputStream = new PrintWriter(server.getOutputStream(), true);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public void stoppeServer() {
try {
outputStream.close();
server.close();
showMessage("Verbindung getrennt!");
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* Sendet einen String
*
* @param st
*/
public void senden(String st1) {
starteSever();
outputStream.println(st1);
stoppeServer();
}
/**
* Macht ein TextPopup im aktuelle Context
*
* @param message
*/
private void showMessage(String message) {
Toast.makeText(hauptfenster.getApplicationContext(),
message,
Toast.LENGTH_LONG).show();
}
/**
* @param timeOut the timeOut to set
*/
public void setTimeOut(int timeOut) {
this.timeOut = timeOut;
}
/**
* @param iP the iP to set
*/
public void setIP(String iP) {
IP = iP;
}
/**
* @param pORT the pORT to set
*/
public void setPORT(int pORT) {
PORT = pORT;
}
}
Alles anzeigen
Viele Grüße