App Inventor Extensions


FTP Extension

See the App Inventor Extensions document about how to use an App Inventor Extension.

For questions about this extension, bug reports and feature requests, please start a new thread in the App Inventor Extensions forum. Thank you.

Dec 14th, 2015: Version 1: Demo version of the FTP Extension released

Jun 7th, 2016: Version 2: possibility added to upload japanese filenames, one file only download option added

Jun 21th, 2016: Version 3: create remote directory method added

Aug 11th, 2016: Version 3a: avoid DX execution failed error: build each extension separately

Oct 16th, 2016: Version 3b: bugfix use parameter UseFileTypeBinary for downloading files, too

Nov 9th, 2016: Version 4/4a: method RemoteFileNames added, missing permissions added

Description

This extension enables you to upload or download files to/from your server via FTP - File Transfer Protocol.
Required permission: none

Probably you want to read this first: What is FTP?
This extension uses the Apache Commons Net 3.4 library. Thank you Apache Software Foundation!

Properties


Returns server address.


Specifies server address.


Returns user id.


Specifies user id.


Returns password.


Specifies password.


Returns whether filetype binary should be used for upload/download, alternatively filetype ASCII will be used.


Specifies whether filetype binary should be used for upload/download, alternatively filetype ASCII will be used. Default is true.

Methods


Download one or all files from remote directory into local directory on SD card.
In case the local directory does not exist, it will be created. If the localDirectoryName starts with file:/// you can specify a complete path for example to download to the external SD card.
To download all files from a remote directory, use an empty string as remoteFileName.
Thank you Noguchi for being the sponsor of the one file only download option.


Upload file to remote directory.
Prefix the filename with / (i.e. relative path) to upload a file from the SD card. For instance /myFile.txt will upload the file /mnt/sdcard/myFile.txt. To upload assets packaged with an application does not make sense and has been disabled therefore. If a fileName starts with file:/// you can specify a complete path to the file.


Create remote directory.
Always begin the remote directory name with a forward slash to create a directory in the server's root directory.


Get filenames of remote directory.

Events


Event indicating that a download has finished.
If Download was successful, the flag "successful" is true and the list of the downloaded files are provided in the response. In case of an error, flag "successful" is false and the error message is provided in the response.


Event indicating that an upload has finished.
If Upload was successful, the flag "successful" is true and the message "successfully uploaded" is provided in the response. In case of an error, flag "successful" is false and the error message is provided in the response.


Event indicating that creating a directory has finished.
If creating the directory was successful, the flag "successful" is true and the message "directory successfully created" is provided in the response. In case of an error, flag "successful" is false and the error message is provided in the response.


Event indicating that remote filenames haven been received.
Parameter successful indicates true (successful) or false.
Parameter response contains the list of available files or in case of an error the error message

Example App: FTP Demo

Add your server address, user id and password to upload or download files to/from your server to test the functionality of the FTP extension.

How to check, if a specific file is available on the remote server?


Screenshots:

Questions and Answers

Q1: Can I download only one file from the remote folder? Because, I do not want to download all the files from the remote folder.
A: I now added that option in the Download method.

Q2: If I want to "Make directory in FTP" it is possible with this extension?
A: I now added a new method "create directory".

Q3: Is it possible to use this extension as FTP server?
A: No, your App Inventor app together with the FTP extension can be used only as client. For FTP server solutions, see these apps in Google Play.

Q4: I would like to know if there is any way to delete the files from my ftp server?
A: I just checked the library and as far as I can see, a delete method is unfortunately not available there.

Do you need help with your App Inventor project?

I can help you: for one hour I charge 25 USD.
Please contact me at info [at] puravidaapps [dot] com for details!
For questions about App Inventor, please use the App Inventor forum. Thank you.

Download the example app to test the functionality of the FTP extension

Your parameter will be stored in TinyDB to simplify your tests.
Download FTP test app (apk file)

Note: The Test app (apk file) uses a special version of the extension, which means, in one day in the future the extension will display an error message and will stop working. This was necessary to prevent dishonest people from extracting the extension from the apk file. Extracting a paid extension from an apk file violates the intellectual property rights of Pura Vida Apps. Don't do that! Thank you.

Buy the FTP extension for App Inventor


You can buy this extension (aix file).
With your payment you accept the terms and conditions below.

Payment options

1. Paypal

Please transfer 10 USD via Paypal.

2. Bitcoin

After having received your payment I will be happy to send the extension (aix file) to you.
Thank you! Taifun


Please check your spam folder in case you did not receive the extension!
I usually will send the extension not later than 24 hours after having received your payment.

 

Terms and Conditions

Back to top of page ...


Home | Snippets | Tutorials | Extensions | News | Forums | Links | Search | Contact