... Intent intent = new Intent(); intent.setAction(Intent.ACTION_PICK); // FTP URL (Starts with ftp://, sftp:// or ftps:// followed by hostname and port). Uri ftpUri = Uri.parse("ftp://yourftpserver.com"); intent.setDataAndType(ftpUri, "vnd.android.cursor.dir/lysesoft.andftp.uri"); // FTP credentials (optional) intent.putExtra("ftp_username", "anonymous"); intent.putExtra("ftp_password", "something@somewhere.com"); //intent.putExtra("ftp_keyfile", "/sdcard/dsakey.txt"); //intent.putExtra("ftp_keypass", "optionalkeypassword"); // FTP settings (optional) intent.putExtra("ftp_pasv", "true"); //intent.putExtra("ftp_resume", "true"); //intent.putExtra("ftp_encoding", "UTF8"); // Download intent.putExtra("command_type", "download"); // Activity title intent.putExtra("progress_title", "Downloading files ..."); // Close activity after transfer (optional) // intent.putExtra("close_ui", "true"); // Remote files to download. intent.putExtra("remote_file1", "/remotefolder/subfolder/file1.zip"); intent.putExtra("remote_file2", "/remotefolder/subfolder/file2.zip"); // Target local folder where files will be downloaded. intent.putExtra("local_folder", "/sdcard/localfolder"); startActivityForResult(intent, 0); ... ... protected void onActivityResult(int requestCode, int resultCode, Intent data) { Log.i(TAG, "Result: "+resultCode+ " from request: "+requestCode); if (data != null) { Log.i(TAG, "Status: "+ data.getStringExtra("TRANSFERSTATUS")); } } ... 转:http://www.androidsnippets.org/snippets/187/index.html