0

Android の ftp クライアントを使用して、drivehq ftp サーバーからディレクトリ リストを取得しようとすると、接続拒否例外が発生します。私を助けて、私の問題を解決してください。この目的のための私のコードを以下に示します。また、実際のデバイス samsang galaxy mobile でテストしています。はい、これらの権限を追加しました

<uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
    public void login(String host,String username,String password,int port)
        {
            try 
            {
                ftpClient.connect(host);
                ftpClient.login(username, password);
                ftpClient.changeWorkingDirectory("/MyData");
                ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
                ftpClient.enterLocalPassiveMode();
            } catch (SocketException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

    public ArrayList<File> getDirectoryListing()
    {       
            ArrayList<File> list=new ArrayList<File>();
            FTPFile[] files = null;

            try
            {
                Log.d(ftpClient.printWorkingDirectory(), "is working directory");
                files=ftpClient.listFiles();
                for(FTPFile f:files)
                {
                    String s=f.getName();
                    Log.d(s, "is file");
                    File fs=new File(s);
                    list.add(fs);
                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return list;
        }
4

1 に答える 1

1

ライブラリを使用ftp-4jしてファイルをサーバーにアップロードしました。プロジェクトに同様の概念を使用できます。ここにリンクがあります:SampleDemo

ありがとう。

于 2013-04-03T03:25:18.097 に答える