android開發ftp
在安卓環境下可以使用,在java環境下也可以使用,已經在Java環境下實現了功能,然後移植到了安卓手機上,其它都是一樣的。
[java] view plain
package com.photo;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
public class FileTool {
/**
* Description: 向FTP伺服器上傳文件
*
* @param url
* FTP伺服器hostname
* @param port
* FTP伺服器埠
* @param username
* FTP登錄賬號
* @param password
* FTP登錄密碼
* @param path
* FTP伺服器保存目錄,是linux下的目錄形式,如/photo/
* @param filename
* 上傳到FTP伺服器上的文件名,是自己定義的名字,
* @param input
* 輸入流
* @return 成功返回true,否則返回false
*/
public static boolean uploadFile(String url, int port, String username,
String password, String path, String filename, InputStream input) {
boolean success = false;
FTPClient ftp = new FTPClient();
try {
int reply;
ftp.connect(url, port);// 連接FTP伺服器
// 如果採用默認埠,可以使用ftp.connect(url)的方式直接連接FTP伺服器
ftp.login(username, password);//登錄
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
return success;
}
ftp.changeWorkingDirectory(path);
ftp.storeFile(filename, input);
input.close();
ftp.logout();
success = true;
} catch (IOException e) {
e.printStackTrace();
} finally {
if (ftp.isConnected()) {
try {
ftp.disconnect();
} catch (IOException ioe) {
}
}
}
return success;
}
// 測試
public static void main(String[] args) {
FileInputStream in = null ;
File dir = new File("G://pathnew");
File files[] = dir.listFiles();
if(dir.isDirectory()) {
for(int i=0;i<files.length;i++) {
try {
in = new FileInputStream(files[i]);
boolean flag = uploadFile("17.8.119.77", 21, "android", "android",
"/photo/", "412424123412341234_20130715120334_" + i + ".jpg", in);
System.out.println(flag);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}
以上為java代碼,下面是android代碼。
[java] view plain
package com.ftp;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new uploadThread().start();
}
class uploadThread extends Thread {
@Override
public void run() {
FileInputStream in = null ;
File dir = new File("/mnt/sdcard/DCIM/Camera/test/");
File files[] = dir.listFiles();
if(dir.isDirectory()) {
for(int i=0;i<files.length;i++) {
try {
in = new FileInputStream(files[i]);
boolean flag = FileTool.uploadFile("17.8.119.77", 21, "android", "android",
"/", "412424123412341234_20130715120334_" + i + ".jpg", in);
System.out.println(flag);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}
}
❷ 安卓手機搭建FTP伺服器
FTP伺服器(FTPServer),是由TheOliveTree開發的,支持手機搭建。
優點:
一、是體積很小,除了FTP伺服器功能之外什麼功能都沒有,APP就1.5M不到的體積。
二、是完全免費,雖然有付費的pro版,但免費版的功能我還沒發現有什麼限制,唯一的就是界面上有點廣告,但是可以通過去除。
三、是APP的界面設計跟Android4.x的UI不是太違和。最後是功能比較穩定,試用很多次都沒發現有連不上的情況,也沒發現有FTP不穩定的情況。
這個APP支持WIFI,藍牙,USB,甚至3G網路的FTP建立。其中最重要的是還支持USBFTP伺服器的建立。
1、手機下載安裝app後打開軟體,設置FTP用戶名以及密碼。
3、連接查看安裝手機的IP地址即可登錄訪問。
❸ 安卓手機如何通過ftp遠程連接電腦,並傳輸文件。
安卓手機通過ftp遠程連接電腦,並傳輸文件步驟如下:
1、網路搜索FileZilla進行下載。
❹ 如何用安卓手機建立個ftp伺服器,讓外網手機或電腦連接
你要一步一步地解決問題,不要試圖一下子就解決問題,因為涉及多方面的知識。
你先要在安卓手機把FTP先安裝起來,本地先訪問起來,再遠程訪問;
給你FTP服務端的APK程序你都沒有下載,再給你另一小巧版本miniftp。
接下來在路由器里用MAC的辦法固定手機的內網IP,以便將手機設為路由器的DMZ主機;
設法知道路由器的外網地址(訪問IP138網就能知道);
用Cuteftp客戶端以路由器公網IP訪問手機的ftp
❺ 安卓手機怎樣建立ftp服務
1.安裝一個可以創建FTP伺服器的軟體,安裝完成後打開,點擊左上角菜單,找到網路這一欄,再點擊打開遠程管理器;
2.到這個頁面之後先不要急著點打開,要確認自己的手機和電腦是不是處於同一個網路,也就是有沒有連接到同一個路由器,也可以建立一個網路鎮仔斗熱點,讓手機和電腦連接上去,如果沒有連接到網路它會提示進行連接,連好網路之後點擊打開;
3.打開之後我們會看到這個界面,說明FTP伺服器已經創建成功,下面會顯示伺服器地址,戚鎮就可以用這個地址在電腦或其他設備 *** 問手機上的文件,也可以點擊右上角的設置來設置用戶名和密碼;
4.在桌面打開我的電腦,地址欄輸入手機上顯示的FTP伺服器地御磨址,按回車,現在我們就可以隨意的在手機和電腦之間拷貝文件,速度也是非常快的。
❻ 安卓手機中建立ftp伺服器如何配置
你這個是客戶端,需要去下載每步FTP服務安裝在手機上,現在安卓版本的FTP伺服器很多,但要求能開機自啟動並且在後台可以工作的就只有這個合適了,我試過很多,都是需要人工點啟動,總不能天天守著手機操作吧,應該是傻瓜式軟體才好用,建議你安裝試試,比較下就明白了,這個還支持遙控器操作,也就是說可以安裝到電視機頂盒或者智能電視機中運行。
❼ 安卓手機怎樣建立ftp服務
不要用第三方的FTP共享,安卓手機的ES文件瀏覽器就帶有FTP服務端,埠3721,
進入ES設定找到遠程設置,勾上遠程訪問,一切搞定,哈。第三方ftp滾吧!
在電腦資源管理器里 就可無線讀寫手機SD卡了
❽ android中ftp如何上傳到伺服器最快
這個有幾個不同情況:手機安裝ftp客戶端,AndFTP是android設備上的一款FTP/SFTP/FTPS客戶端軟體,可以實現和電腦一樣的文件傳輸方式,直接連接你的空間即可傳輸。手機沒有客戶端軟體,可以採用中間方式,使用網頁傳輸,叫做webftp工具,就是利用網頁數據傳輸的方式,打開webftp網站,輸入空間的FTP信息連接即可傳輸文件。注意一點,使用webftp需要在空間後台先設置允許連接的IP地址,使空間伺服器允許webftp連接並向其傳輸文件。
❾ Android開發訪問FTP伺服器
commons-net.jar裡面有ftp相關的介面,這個是我自己封裝的一個類
import java.io.FileInputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
public class FTPUtils {
/**
* 通過ftp上傳文件
*
* @param fileNamePath
* 要上傳的文件路徑 , 以'結'尾
* @param fileName
* 要上傳的文件名
* @return 如果成功返回"" , 否則返回錯誤結果
*/
public static String ftpUpload(String sdcardFullFileName, String fileName, String ftpPath) {
FTPClient ftpClient = new FTPClient();
FileInputStream fis = null;
String returnMessage = "";
try {
ftpClient.connect(ConnectConfig.ftpIP, ConnectConfig.ftpPort);
boolean loginResult = ftpClient.login(ConnectConfig.ftpUserName, ConnectConfig.ftpPassWord);
int returnCode = ftpClient.getReplyCode();
if (loginResult && FTPReply.isPositiveCompletion(returnCode)) {// 如果登錄成功
String[] splits = ftpPath.split("/");
String temps = splits[0];
ftpClient.makeDirectory(temps);
for(int i=1;i<splits.length;i++){
temps += "/" + splits[i];
ftpClient.makeDirectory(temps);
}
// ftpClient.makeDirectory(ftpPath);
// 設置上傳目錄
ftpClient.changeWorkingDirectory(ftpPath);
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
fis = new FileInputStream(sdcardFullFileName);
// boolean result = ftpClient.(fileName, fis);
boolean result = ftpClient.storeFile(fileName, fis);
if(result){
returnMessage = ""; // 上傳成功
}else{
returnMessage = "上傳失敗";
}
} else {// 如果登錄失敗
returnMessage = "登錄FTP時失敗,FTP用戶名或者密碼錯誤!";
}
} catch (IOException e) {
// ftp發送出現異常
e.printStackTrace();
returnMessage = "FTP客戶端出錯!" + e;
} finally {
try {
ftpClient.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
return returnMessage;
}
}
❿ 如何用安卓手機建立個ftp伺服器
打開一圖的管理器,點擊管理器上三。(ftp基於區域網,因此手機pc連接一個名字網路)
點擊遠程管理了去,點擊右上角螺母了去。
點擊設置密碼這里,賬號密碼盡量簡單。
例如全部設置為a,點擊確定,然後點擊打開。
此時看到橋鍵明ftp開頭的伺服器地址亮碼,點擊電腦開始。
點擊計算機,計算機欄輸敏告入地址,輸入密碼,那麼就可以管理手機上的文件了。