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:
Server: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(); } }
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(); } }

LinkBack URL
About LinkBacks
Ultima modifica di Supergiox; 02-04-11 alle
Rispondi quotando