Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Upload extends AsyncTask<String, String, String> {
- @Override
- protected String doInBackground(String... params) {
- // TODO Auto-generated method stub
- FTPClient client= new FTPClient();
- try {
- InetAddress indirizzo = InetAddress.getByName("myurl.com");
- client.connect(indirizzo);
- //risposta.setText(client.getReplyString());
- //aperta la connessione al server procedo al login
- boolean loggato=client.login("username", "password");
- //if(loggato==true) risposta.append(" ....login effettuato");
- //else risposta.append("...login fallito");
- client.enterLocalPassiveMode();
- //apro il file contenuto nel path /sdcard come stream
- client.setFileType(FTP.BINARY_FILE_TYPE); // imposto il tipo di dati, da modificare a seconda dell'utilità
- File sdcardDir = Environment.getExternalStorageDirectory(); //dato che il mio file era sulla sd prendo il riferimento alla memoria esterna
- File file = new File(sdcardDir,"fotografia.jpg"); //prendo il riferimento al file salvato sulla sd
- FileInputStream fis = new FileInputStream(file);//creo uno stream in input a partire dal mio file
- long lengthofFile = file.length();
- //risposta.append("...path file: " + file.getPath()); //questa istruzione la usavo per test, la lascio casomai dovesse servire, stampa semplicemente il path del file che voglio uploadare
- boolean upload_ok=client.storeFile("fotografia.jpg", fis);
- int progress = 0;
- int bytesRead = 0;
- byte buf[] = new byte[1024];
- BufferedInputStream bufInput = new BufferedInputStream(new FileInputStream(file));
- while ((bytesRead = bufInput.read(buf)) != -1) {
- progress += bytesRead;
- publishProgress("" + (int) ((progress * 100) / lengthofFile));
- }
- fis.close();//procedo alla chiusura dello stream, infatti storeFile non chiude fis
- } catch (SocketException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- @Override
- protected void onPostExecute(String result) {
- // TODO Auto-generated method stub
- dismissDialog(DIALOG_UPLOAD_PROGRESS);
- }
- @Override
- protected void onPreExecute() {
- // TODO Auto-generated method stub
- super.onPreExecute();
- showDialog(DIALOG_UPLOAD_PROGRESS);
- }
- @Override
- protected void onProgressUpdate(String... values) {
- // TODO Auto-generated method stub
- //Log.d("ANDRO_ASYNC", values[0]);
- progressDialog.setProgress(Integer.parseInt(values[0]));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement