Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将Android应用程序连接到FTP服务器_Java_Android_Ftp_Filezilla - Fatal编程技术网

Java 将Android应用程序连接到FTP服务器

Java 将Android应用程序连接到FTP服务器,java,android,ftp,filezilla,Java,Android,Ftp,Filezilla,我在将android应用程序连接到filezilla ftp服务器时遇到问题。服务器功能正常,但我仍在LogCat上获得以下输出: 05-30 19:49:43.872: D/$$$$$$$$$$$$$$$$$$(1693): $$$$$$$$$$$$$$$$$$$$$$$$$ ERROR 1 05-30 19:50:04.913: W/System.err(1693): java.net.SocketTimeoutException: Connection timed out 05-30 19

我在将android应用程序连接到filezilla ftp服务器时遇到问题。服务器功能正常,但我仍在LogCat上获得以下输出:

05-30 19:49:43.872: D/$$$$$$$$$$$$$$$$$$(1693): $$$$$$$$$$$$$$$$$$$$$$$$$ ERROR 1
05-30 19:50:04.913: W/System.err(1693): java.net.SocketTimeoutException: Connection timed out
05-30 19:50:04.913: W/System.err(1693): at org.apache.harmony.luni.platform.OSNetworkSystem.connect(Native Method)
05-30 19:50:04.913: W/System.err(1693): at dalvik.system.BlockGuard$WrappedNetworkSystem.connect(BlockGuard.java:357)
05-30 19:50:04.913: W/System.err(1693): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:204)
05-30 19:50:04.913: W/System.err(1693): at org.apache.harmony.luni.net.PlainSocketImpl.connect(PlainSocketImpl.java:437)
05-30 19:50:04.913: W/System.err(1693): at java.net.Socket.connect(Socket.java:1002)
05-30 19:50:04.913: W/System.err(1693): at org.apache.commons.net.SocketClient.connect(SocketClient.java:175)
05-30 19:50:04.913: W/System.err(1693): at org.apache.commons.net.SocketClient.connect(SocketClient.java:196)
05-30 19:50:04.913: W/System.err(1693): at org.apache.commons.net.SocketClient.connect(SocketClient.java:289)
05-30 19:50:04.913: W/System.err(1693): at General.FTPHandle.Connect(FTPHandle.java:40)
05-30 19:50:04.913: W/System.err(1693): at General.FTPHandle.doInBackground(FTPHandle.java:30)
05-30 19:50:04.913: W/System.err(1693): at General.FTPHandle.doInBackground(FTPHandle.java:1)
05-30 19:50:04.913: W/System.err(1693): at android.os.AsyncTask$2.call(AsyncTask.java:185)
05-30 19:50:04.913: W/System.err(1693): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
05-30 19:50:04.913: W/System.err(1693): at java.util.concurrent.FutureTask.run(FutureTask.java:138)
05-30 19:50:04.913: W/System.err(1693): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
05-30 19:50:04.933: W/System.err(1693): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
05-30 19:50:04.933: W/System.err(1693): at java.lang.Thread.run(Thread.java:1019)
代码如下所示:

public class FTPHandle extends AsyncTask<String, String, String>
{
    public FTPClient client = null;
    public FileInputStream fis = null;
    private File root;
    private File dir;

    public FTPHandle()
    {
        client = new FTPClient();
        fis = null; 
        root = android.os.Environment.getExternalStorageDirectory();
        dir = new File (root.getAbsolutePath()+ "/TrackingData"); //creates directory
        execute();
    }

    protected String doInBackground(String... arg0) {
        Connect();
        return null;
    }

    public int Connect()
    {
        int status = 0;

        try {
            Log.d("$$$$$$$$$$$$$$$$$$","$$$$$$$$$$$$$$$$$$$$$$$$$ ERROR 1");
            client.connect("192.168.1.64");
            Log.d("$$$$$$$$$$$$$$$$$$","$$$$$$$$$$$$$$$$$$$$$$$$$ ERROR 2");

            // Create an InputStream of the file to be uploaded
            fis = new FileInputStream(dir);
            // Store file to server
            client.storeFile(dir.getName(), fis);
            client.logout();

            status = 1;
        } catch (IOException e) {
            e.printStackTrace();

            status = 0;
        } finally {
            try {
                if (fis != null) {
                    fis.close();
                }
                client.disconnect();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return status;
    }
}
公共类FTPHandle扩展异步任务
{
公共FTPClient客户端=空;
public FileInputStream fis=null;
私有文件根;
私有文件目录;
公共FTPHandle()
{
客户端=新的FTPClient();
fis=null;
root=android.os.Environment.getExternalStorageDirectory();
dir=新文件(root.getAbsolutePath()+“/TrackingData”);//创建目录
执行();
}
受保护的字符串doInBackground(字符串…arg0){
Connect();
返回null;
}
公共int Connect()
{
int status=0;
试一试{
Log.d(“$$$$$$$$$$”,“$$$$$$$$错误1”);
client.connect(“192.168.1.64”);
Log.d(“$$$$$$$$$$”,“$$$$$$$$$错误2”);
//创建要上载的文件的InputStream
fis=新文件输入流(dir);
//将文件存储到服务器
client.storeFile(dir.getName(),fis);
client.logout();
状态=1;
}捕获(IOE异常){
e、 printStackTrace();
状态=0;
}最后{
试一试{
如果(fis!=null){
fis.close();
}
client.disconnect();
}捕获(IOE异常){
e、 printStackTrace();
}
}
返回状态;
}
}
Ps:服务器正常工作。我已经测试过了;)


亲切问候

您肯定需要使用
192.168.1.64
,而不是
ftp://192.168.1.64
。如果只使用
192.168.1.64
,会出现什么错误?超时错误。。我应该指定端口吗?请在您的问题中包含一个完整的异常转储(您可以删除
ftp://...
scenario,这是无用的)。如果是默认端口,则不需要指定端口。Martin Prikryl问题现在已更新;)。好的,你能用其他安卓FTP客户端连接吗?我想这也行不通。在这种情况下,这个问题最好转到或。