Я создаю очень маленькое приложение для отправки данных с мобильного телефона на компьютер.Я прочитал несколько примеров и получил код сервера и клиента.Но когда я пытаюсь подключить их, появляется сообщение об ошибке «сеть недоступна».Любая идея, что я делаю неправильно ??
Это код сервера:
import java.net.*;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.*;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Server {
static BufferedReader in = null;
static Socket clientSocket = null;
static ServerSocket serverSocket = null;
public static void main(String[] args) throws IOException {
JFrame frame = new JFrame("FrameDemo");
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
try {
if (in != null)
in.close();
if (serverSocket.isClosed())
{}
else
serverSocket.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
});
JLabel Label = new JLabel("");
Label.setPreferredSize(new Dimension(175, 100));
frame.getContentPane().add(Label, BorderLayout.CENTER);
//Display the window.
frame.pack();
frame.setVisible(true);
Label.setText("Empezo");
serverSocket = null;
try {
serverSocket = new ServerSocket(4444);
} catch (IOException e) {
System.err.println("Could not listen on port: 4444.");
System.err.println(e.getMessage());
System.exit(1);
}
Integer puerto = serverSocket.getLocalPort();
Label.setText("<html>Puerto Abierto: " + puerto.toString() + "<br>IP Servidor: " + serverSocket.getInetAddress().toString() + "</html>");
clientSocket = null;
try {
clientSocket = serverSocket.accept();
Label.setText("Conection Accepted");
} catch (IOException e) {
System.err.println("Accept failed.");
System.exit(1);
}
in = new BufferedReader(
new InputStreamReader(
clientSocket.getInputStream()));
while ((in.readLine()) != null) {
System.out.println("Mensaje: " + in.readLine());
}
}
}
И часть клиента
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
public class PruebaSocket extends Activity {
/** Called when the activity is first created. */
Socket Skt;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button Enviar =(Button)findViewById(R.id.OK);
Button Salir = (Button)findViewById(R.id.SALIR);
final TextView IP = (TextView)findViewById(R.id.IP);
Skt = new Socket();
Enviar.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
try{
Skt = new Socket("192.168.1.101",4444);
CharSequence errorMessage = "Coneccted";
Toast.makeText(PruebaSocket.this, errorMessage, Toast.LENGTH_SHORT).show();
}
catch(Exception E)
{
CharSequence errorMessage = E.getMessage();
Toast.makeText(PruebaSocket.this, errorMessage, Toast.LENGTH_SHORT).show();
if (Skt.isConnected())
try {
Skt.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
});
Salir.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
try {
Skt.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
);
}
}
192.168.1.101 это IPсервер.