Run server as root user (only rooted devices).TLS/SSL support for secure connections.

How to connect with Ftp server using USB cable:

This can useful when you have USB cable and not network available. 1) On your phone go to Settings->Applications->Development and set option "USB debugging".2) Connect your phone to your PC using USB cable.3) Start adb server. On your PC run command "adb start-server". adb is a program that you can find on android sdk. Usually you will find it on android-sdk\platform-tools\adb.4) Forward needed ports from your PC to your phone. On your PC run command "adb forward tcp:2221 tcp:2221" You will need to repeat this step for all ftp server and passive ports configured in your phone. It will be easier if you use a small range of passive ports. With this, any connection in your pc to 127.0.0.1:2221 will be forwarded to your phone in port 2221.5) Run Ftp server in your phone, open settings and in "Network interfaces" select "Loopback (127.0.0.1)" or "All"6) Start ftp server.7) In your PC connect your ftp client to ftp://127.0.0.1:2221 (port might be different, it depends on your Ftp Server configuration).

Connections in this mode need to be always started by PC so only passive mode is available when using USB connection.

Permissions needed:

INTERNETACCESS_NETWORK_STATEACCESS_WIFI_STATE

Network permission to enable server to open network communication with ftp clients.

WRITE_EXTERNAL_STORAGE

Enables ftp server write received files from ftp clients on sdcard.

WAKE_LOCK

Keeps phone wake only while server is running. If phone is not wake connections to ftp server can fail.