Contenido sobre Android
Buscar
Social
Ofertas laborales ES

Foro sobre Android > Como puedo subir un archivo a ftp? tengo este codigo pero no va

El siguiente codigo funciona a la perfeccion en el simulador, sin embargo en el telefono la aplicacion salta

"%programa% was unfornatelly stopped" ...

Utiliza la libreria commons-net-3.0.1 (.jar) aqui mas info [Url]http://commons.apache.org/net/[/url]

He añadido estas lineas al manifest pero tampoco
[code]
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_LOGS" />
[/code]


¿Alguna sugerencia o cualquier otro metodo efectivo para subir archivos pequeños a ftp?

Podria alguien subir un ejemplo que funcione?

A continuacion mi codigo

[code]package vierco.com.test;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.net.InetAddress;
import java.util.Calendar;
import java.util.Date;

import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;

import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.text.format.Time;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;


public class PruebasActivity extends Activity {

private class MiTarea extends AsyncTask<String, Float, Integer>{

protected void onPreExecute() {
Toast.makeText(PruebasActivity.this, "Subiendo archivo...", Toast.LENGTH_SHORT).show();
}

protected Integer doInBackground(String... urls) {


try {
FTPClient ftpClient = new FTPClient(); ftpClient.connect(InetAddress.getByName("ftp.MIHOST.org")); // direccion o nombre del host
ftpClient.login("MIUSER", "MIPASS"); // usuario y login del ftp

ftpClient.changeWorkingDirectory("/htdocs"); // carpeta del servidor donde vamos a guardar el archivo

ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
BufferedInputStream buffIn=null;

buffIn=new BufferedInputStream(new FileInputStream("/sdcard/at.txt")); // ruta del archivo a subir en el dispositivo android

ftpClient.enterLocalPassiveMode();
ftpClient.storeFile("at.txt", buffIn); // nombre del archivo aL subir
buffIn.close();
ftpClient.logout();
ftpClient.disconnect();


} catch (Exception e) {
Toast.makeText(PruebasActivity.this, "Error...", Toast.LENGTH_SHORT).show();
}


return null;
}


protected void onPostExecute(Integer bytes) {
Toast.makeText(PruebasActivity.this, "Archivo subido...", Toast.LENGTH_SHORT).show();
}
}


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Button boton =(Button) findViewById(R.id.button1);

boton.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
new MiTarea().execute();
}
});

}


}
[/code]
Un saludo y gracias

noviembre 30, 2012 | Unregistered Commenterjok