Ciao ragazzi! Non riesco a capire come mai il mio semplicissimo client non si colleghi ad un altrettanto semplicissimo server. Riporto qui il codice (omettendo i package e le import, perchè sono abbastaza sicuro di aver inserito tutte quelle necessarie), sperando che qualcuno di voi abbia un po di tempo (e soprattutto un po di voglia) per darmi una mano.
public class ConnectActivity extends Activity {
TextView socketOutput;
//Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mio_layout);
TextView socketOutput = (TextView)findViewById(R.id.txt_1);
String output = callSocket("localhost",4000);
socketOutput.setText(output);
}
private String callSocket(String ip, Integer port) {
Socket socket = null;
BufferedWriter writer = null;
BufferedReader reader = null;
String output = null;
try{
socket = new Socket(ip,port);
writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String input = "Richiesta stato";
writer.write(input + "\n", 0, input.length() +1);
writer.flush();
output = reader.readLine();
reader.close();
writer.close();
socket.close();
}catch(IOException e) {
System.err.println(e);
}
return output;
}
}
Ho anche inserito android: permission="android.permission.INTERNET" nel tag <application> del ManifestFile.Xml.... ma non riesco a capire quale sia l'errore.
Cioè, in realtà non mi dà nessun errore, ma in teoria dovrebbe settarmi il testo della TextView e non lo fa.