У меня есть работающее серверное приложение на JAVA (многопоточное) и работающее клиентское консольное приложение.
Сейчас я пытаюсь создать клиент для Android, однако, используя Eclipse и эмулятор Android, я не могу подключиться к локальному серверу ....
- да, я использую 10.0.2.2 в качестве ip своего сервера.
да, файл манифеста изменяется с разрешением ИНТЕРНЕТ.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
public class RealApp extends Activity implements OnClickListener {
private PrintWriter pw;
private BufferedReader in;
private boolean connected = false;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
if (!connected)
{
Thread cThread = new Thread(new ClientThread());
cThread.start();
}
}
public class ClientThread implements Runnable {
public void run() {
{
Socket skt = null;
try {
skt = new Socket("l0.0.2.2", 1337);
} catch (UnknownHostException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
String s = "";
String inString = "";
BufferedReader in = null;
try {
in = new BufferedReader(new InputStreamReader(skt.getInputStream()));
} catch (IOException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
PrintWriter pw = null;
try {
pw = new PrintWriter(skt.getOutputStream(), true);
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
do
{
try {
inString = in.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
while(!s.equals("quit"));
pw.close();
try {
skt.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}}
Во время отладки в окне журнала я вижу сообщение System.err, исключение UnknowHostException для 10.0.2.2.