Ciao a tutti!
Non so se questa è la sezione adatta, in caso sposto la discussione...
Ho fatto un paio di applicazioni che mi permettono di far comunicare pc e android utilizzando due classi java che ho scritto io e che implementano i Socket.
Fino ad oggi pomeriggio funzionavano perfettamente... poi, per motivi di forza maggiore ho cambiato rom al mio Optimus One (da Nessy a LOL, entrambe con kernel 2.2.2) e funziona tutto, tranne i miei programmi 
Non capisco a cosa possa essere dovuto... forse manca qualche libreria? Poi ho notato che tramite l'app "telnet" riesco a comunicare con il pc.. quindi evidentemente esiste un'alternativa... ma qual è?
Non so se può essere utile, ma questi sono i sorgenti della classe Server (pc) e Client (smartphone)
Client:
codice:
import java.net.*;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.Socket;
public class Client{
Socket socket;
BufferedWriter out;
BufferedReader in;
Client(String address, int port) throws UnknownHostException, IOException{
socket = new Socket(address, port);
System.out.println("Connesso a "+address+" alla porta "+port);
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
out.flush();
}
String receive() throws IOException{
return in.readLine();
}
void send(String msg) throws IOException
{
out.write(msg);
out.flush();
}
void close() throws IOException{
in.close();
out.close();
socket.close();
}
}
Server:
codice:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Server{
ServerSocket socket;
Socket connection = null;
BufferedWriter out;
BufferedReader in;
String message;
Server(int port) throws IOException{
socket = new ServerSocket(port);
System.out.println("In listening...");
connection = socket.accept();
System.out.println("Connessione avvenuta con " + connection.getInetAddress().getHostName());
in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
out = new BufferedWriter(new OutputStreamWriter(connection.getOutputStream()));
out.flush();
}
String receive() throws IOException{
return in.readLine();
}
void send(String msg) throws IOException {
out.write(msg);
out.flush();
}
void close() throws IOException{
in.close();
out.close();
socket.close();
}
public static void main(String args[]) throws Exception
{
String ric="";
Server server = new Server(8888);
System.out.println("\nCONNESSO!");
server.send("Siamo collegati!\n");
do{
ric=server.receive();
System.out.println("Ho ricevuto:"+ric);
server.send("Ciao client");
}
while(ric!=null && !ric.equals("") && !ric.equals("chiudi"));
System.err.println("Chiudo la connessione");
server.close();
}
}