Salve a tutti.
Sono nuovo in questo forum ed avrei bisogno di un aiuto su una procedura realizzata con una classe JAVA (per android app) che legge un file di testo residente su un server remoto.
Sino a quando si tratta di leggere il file di testo e pubblicare il suo contenuto sull'applicazione android non ho problemi (per intenderci in una TextWiew), ma adesso ho necessità di popolare una spinner con i dati contenuti nel file di testo, cioè la lista dei comuni italiani.
Il codice è questo, ma mi sono perso ... so che dovrei usare un Array per il popolamento della spinner ... ma ho provato in vari modi ma l'app va in FATAL EXCEPTION ...
Sapete aiutarmi? Grazie in anticipo.
codice:
import java.io.ByteArrayOutputStream;import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
import android.os.Bundle;
import android.widget.Spinner;
import android.app.Activity;
public class SpinnerPopText extends Activity {
Spinner sp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.spinnerpoptext);
new Thread() {
@Override
public void run() {
String path = "http://www.myremotehost.com/folder/comuni.txt";
URL u = null;
try {
u = new URL(path);
HttpURLConnection c = (HttpURLConnection) u
.openConnection();
c.setRequestMethod("GET");
c.connect();
InputStream in = c.getInputStream();
final ByteArrayOutputStream bo = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
in.read(buffer);
bo.write(buffer);
runOnUiThread(new Runnable() {
@Override
public void run() {
sp = (Spinner) findViewById(R.id.my_spinner);
//Qui cosa devo prevedere ????
try {
bo.close();
} catch (IOException e) {
e.printStackTrace();
}
}
});
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
}
}