我的小组和我正在使用一个简单的java服务器来运行我们的游戏。它只是从一个客户端获取信息并将其提供给另一个客户端。我们可以让客户端连接到服务器,但是当我们让它返回到客户端的成功连接时,它将不会返回。我们被告知使用android处理程序和线程来解决这个问题。我们认为我们正在使用线程部分,但需要一些android处理程序的帮助。
public int connect(String hostName, int portNum){
//this connects to the server
//Scanner stdin = new Scanner(System.in);
host = hostName;
port = portNum;
lock = 1;
this.start();
String response;
while(lock == 1){
try {
Thread.sleep(10);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
try{
response = in.readLine();
if(Integer.parseInt(response)==1){
player = 1;
}else{
player = 2;
}
}catch(IOException e){
System.out.println("Error!");
return -1;
}
return player;
}
public void run(){
try{
server = new Socket(host, port);
out = new PrintWriter(server.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(server.getInputStream()));
}catch(IOException e){
System.out.println("Error!");
}
lock = 0;}