Send With FTP

Android App for sharing files through FTP

Usage

When you launch Send With FTP through its app icon, you manage a list of FTP URIs. You can:

Add a URI
Simply enter it into the text field at the bottom of the screen and click on Add
Edit a URI
Select Edit from an entry's context menu. The text field at the bottom gets filled with its content, and you can edit it, and commit your change through the Change button.
Delete a URI
Select Delete from an entry's context menu.

It is from this list that you can select a target URI when you choose Send With FTP for sharing content. Before selecting a target (by clicking on its entry in the list), you can still add, edit, delete entries, as explained above.

Example use cases supported by Send With FTP are:

Send With FTP currently does not prompt for username and password. You have to provide them in the URI, e.g.: ftp://login:password@my.example.org:port/my/directory/ .

Concept

Send With FTP responds to two intents for sharing files through FTP:

  1. android.intent.action.SEND: The user manages a list of FTP URIs and selects one as the target for the file being shared. This intent is Android's generic standard for sharing files, thus Send With FTP will be available from any app allowing to share files.
  2. android.intent.action.SENDTO: if the URI in the data is of scheme ftp, Send With FTP immediately triggers the upload to this target. This mode is used from my app My Expenses.

Integrating Send With FTP into your app

If you want to provide users of your app, the possibility to transfer content to an FTP server you could suggest the installation of Send With FTP and create an intent for initiating the transfer with code similar to the following

      
File file = new File(dir,name);
String mimeType = "text/qif";
String target= "ftp://login:password@my.example.org:port/my/directory/";
intent = new Intent(android.content.Intent.ACTION_SENDTO);
intent.setDataAndType(android.net.Uri.parse(target),mimeType);
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
if (packageManager.queryIntentActivities(intent,0).size() == 0) {
  Toast.makeText(getBaseContext(),
    R.string.no_app_handling_ftp_available, Toast.LENGTH_LONG)
  .show();
} else {
  startActivity(intent);
}
      
      
with the following line in res/values/strings.xml:
      
No app handling ftp
  available. Install Send With FTP from Google Play?]]>
      
      

Install

Get it on F-Droid

Sourcecode

View on GitHub

Licence

GNU General Public License version 3

Includes FTP library from http://commons.apache.org/net/ , licenced under http://www.apache.org/licenses/LICENSE-2.0.txt

Changelog

1.2.2April 1 2016
Handle more types of shared data.
1.2.1August 4 2014
Make it work under Kitkat.
1.2.0July 17 2013
Support for explicit FTPS.
1.1.0March 2 2013
Allow picking a file for upload. Completed UI translation.
1.0.8February 8 2013
Turkish translation. Show example URI as hint.
1.0.7December 29 2012
Added usage information. Allow editing of entries while selecting share target.
1.0.6December 28 2012
Fix crash when trying to share vcard from contacts application. Do not overwrite files on target.
1.0.5December 26 2012
Now works with more use cases like sharing pictures from galery or files from file explorer.

Credits

Feedback

If you find Send With FTP useful, leave a comment in the Market. If you find a problem, have a suggestion for an improvement, or would like to contribute, please contact Michael Totschnig. You can also donate through Flattr Flattr this or PayPal

or send Bitcoins to 1Dmj6keLGgNHBUD5unsbZz5vnk9wRinRAy.