[APP] Instant Upload

Search This thread

cewan

Senior Member
Sep 21, 2010
64
4
This app is to be used to conveniently upload files to your FTP or SFTP server.

The app has a queuing functionality which can be enabled under settings.

Help text (from app):
Instant Up is used to quickly upload any type of file to your server.

FTP settings must be configured before use. To configure, choose
Settings in the options menu.

Here is an example, to help you configure.

If you specify file type zip and path myZipFolder, all zip files will be uploaded to myZipFolder.
If you want all file types to be uploaded to the same server directory, specify * in the file type column. This rule will be used for all files not matching any of the other rules.
If no rule exists for the current file type you will be forwarded to an FTP browser to let you select a destination folder.

Start using
Instant Up now by, for instance, downloading a file in the web browser and clicking on it in the Downloads section of the browser.

If queueing is enabled in settings, files will not be uploaded instantly, instead you are able to queue up all files that you need to upload. If all files in queue are matching some rule defined, the files will be uploaded to the correct folders depending on the rules. If some file does not match any rule, you will be asked for an upload folder and (NOTE) ALL files in queue will be uploaded to that folder.

Versions

  • 2.2: Free version now supports SFTP as well, and it now has ads. Also fixed a bug of being able to add non-numbers in port field.
  • 2.1.2: Fixed error when trying to upload non-file items
  • 2.1.1
    • now supports sharing multiple files (e.g. from Gallery)
    • Fixed bug when trying to share other stuff than files
  • 2.1: now supports sharing (from Gallery app for instance)
  • 2.0.1: support for earlier OS:s (1-6 - 2.1) Prior to this only 2.2 was supported.
  • 2.0: queueing, App2SD, bugfixes
  • 1.0.1: bugfixes
  • 1.0: initial version
QR and links
Since I was not allowed to add links to this forum, you just have to search for Instant Development in the Market.

Feedback
If you see any problems in the app or have any suggestions, please post here. If you like the app please rate and comment it in the market.
 

Attachments

  • InstantUp-queue.png
    InstantUp-queue.png
    17.4 KB · Views: 521
  • InstantUp-browse.png
    InstantUp-browse.png
    19.9 KB · Views: 420
  • instant_development_qr.png
    instant_development_qr.png
    1.3 KB · Views: 351
Last edited:

elmicha

Senior Member
Aug 14, 2005
135
9
Bonn
Like in AndFTP or Connectbot. The AndFTP method is a lot simpler than the Connectbot method. I would say that the simpler method is enough:

The user generates a public/private key pair with ssh-keygen or dropbearkey on his server. Then he appends the public key to his ~/.ssh/authorized_keys and copies the private key to the phone. The sftp client can now import that private key and use it.

Probably it would be easier if you would specify a fixed directory and filename where the user should store his private key, e.g. /sdcard/InstantUpload/id_dsa (or id_rsa). If there is a file with that filename, Instant Upload can import the key and store it internally, and then delete the file. That way you don't need a file selection dialog and the user doesn't need to hunt for the file with that dialog.
 

cewan

Senior Member
Sep 21, 2010
64
4
Like in AndFTP or Connectbot. The AndFTP method is a lot simpler than the Connectbot method. I would say that the simpler method is enough:

The user generates a public/private key pair with ssh-keygen or dropbearkey on his server. Then he appends the public key to his ~/.ssh/authorized_keys and copies the private key to the phone. The sftp client can now import that private key and use it.

Probably it would be easier if you would specify a fixed directory and filename where the user should store his private key, e.g. /sdcard/InstantUpload/id_dsa (or id_rsa). If there is a file with that filename, Instant Upload can import the key and store it internally, and then delete the file. That way you don't need a file selection dialog and the user doesn't need to hunt for the file with that dialog.

Thank you for a very thorough description. I will have a look at it!
 

cewan

Senior Member
Sep 21, 2010
64
4
Good and thorough work, man. But for what reason? Most of Android file explorers already can interact with FTP.
Thanks.
The only reason why I started to build this app was that I wanted something that in the fastest way possible let me download any file from the browser and directly upload it to an SFTP server.
I have searched for apps that supported this, but none of them could do this.
With the file explorers you have to do something like the following:
  1. Download file from browser
  2. Close browser
  3. Open File Explorer
  4. Browse to the folder containing the file
  5. Find the file in the folder
  6. Long click the file
  7. Select upload action
  8. Select destination folder

With this app only three steps are required:
  1. Download file from browser
  2. Click on file
  3. Select application (Instant Upload)
 
Last edited:

alcaron

Senior Member
Nov 9, 2009
93
1
Since the market link leads here I assume you did the Spotify Controller app.

I just installed the server on Win7 x64 and...there is a LOT wrong with it.

I actually package software for a living, unless you protest I will probably try to put together a PROPER package for the current version of the server software.

Honestly, using a zip file means everything gets tagged as a download from the internet, which means every batch files prompts (or more usually, just flat out fails when called from a batch files). Using a vbscript to create shortcuts is ok, but the shorcut didn't have the working directory set. It points to the controller.bat in the main directory, which calls controller.bat in the server subdirectory, which is redundant and asking for trouble. The batch files it calls will almost never work on Win7 (even 32 bit) and surprised it works in XP, because it calls %~dp0java but the JRE by default doesn't add itself to the PATH variable so the server fails to start 100% of the time (this can be fixed by finding the path to java.exe and setting the shortcut to call java.exe and then the command line (don't forget to set the working directory to the /server folder or it will vomit). So both those batch files are unnecessary and break easily.

I had to go through the install.bat and change the paths from %~dp0 to hardcoded, again you could probably come up with just about anything OTHER than a batch file and it would work, as opposed to the way it is now which...doesn't...

Also for us US users new to the party the example URI in the installer isn't available in the US so no matter what it's broken, I found a Green Day song (Jesus of Suburbia) that works and appears to be available everywhere.

http://open.spotify.com/track/10lT3pp9QERGOWiIzLx4We

The server is nice, and fast, and for what it is (and the price) works well. Especially for "party mode" of just switching between playlists or "ohhh I really wanna listen to song x right now!"

But the installer as it is...is so broken as to be virtually useless. The only downside to me making a package for this is that everytime you update the software I'd either have to do it again or use something free like, I believe nullsofts installer.
 

alcaron

Senior Member
Nov 9, 2009
93
1
I would highly recommend learning the Nullsoft installer btw, it is free, and can do a LOT better job than batch files. As far as I know (I use a several thousand dollar software suite at work not nullsoft so I'm not too good with nullsoft) it can even do things like execute a command and wait for feedback.
 

cewan

Senior Member
Sep 21, 2010
64
4
I would highly recommend learning the Nullsoft installer btw, it is free, and can do a LOT better job than batch files. As far as I know (I use a several thousand dollar software suite at work not nullsoft so I'm not too good with nullsoft) it can even do things like execute a command and wait for feedback.

Thank you for your feedback. The packaging thing has been nagging me for a while now.
I know my packaging is poor and I would be very grateful for any help!

I have tried things like Nullsoft before, and I did not do very well.
Is there any chance that you could create a package for Spotify Controller and instruct me on how to keep that package updated when I release future versions?
 

alcaron

Senior Member
Nov 9, 2009
93
1
I'm actually working on a couple scripts right now, because as nice as MSI's are, there isn't a really good free editor, but at least I can maybe give you some scripts that will make it a little more fault tolerant.
 
  • Like
Reactions: cewan

alcaron

Senior Member
Nov 9, 2009
93
1
This should create your shortcuts.

Code:
Option Explicit
Dim oFSO, oWsh, link, javaLoc, instDir, shstart, shstop, t1, t2

Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oWsh = CreateObject("WScript.Shell")
instDir = "C:\Program Files\SpotCon"

t1 = "C:\Program Files (x86)\Java\jre6\bin\java.exe"
t2 = "C:\Program Files\Java\jre6\bin\java.exe"

If oFSO.FileExists(t1) Then
	javaLoc = t1
ElseIf oFSO.FileExists(t2) Then
	javaLoc = t2
End If

Set shstart = oWsh.CreateShortcut("C:\Users\alcaron\Desktop\Start Server.lnk")
shstart.Arguments = "-jar start.jar jetty.port=1258"
shstart.Description = "Spotify Controller"
shstart.IconLocation = instDir + "\resources\icon.ico,0"
shstart.TargetPath = javaLoc
shstart.WorkingDirectory = "C:\Program Files\SpotCon\server"
shstart.Save

Set shstop = oWsh.CreateShortcut("C:\Users\alcaron\Desktop\Stop Server.lnk")
shstop.Arguments = "/F /fi " + CHR(34) + "IMAGENAME eq java.exe" +  Chr(34)
shstop.Description = "Spotify Killer"
shstop.IconLocation = instDir + "\resources\icon_kill.ico,0"
shstop.TargetPath = "C:\Windows\System32\taskkill.exe"
shstop.WorkingDirectory = "C:\Windows\System32"
shstop.Save
 

alcaron

Senior Member
Nov 9, 2009
93
1
The spotifyOpenUri.bat needs to be updated to somehow tell where spotify is installed to. It SHOULD be as simple ad swapping between %programfiles(x86)% and %programfiles%

I hate microsoft for introducing the (x86) directory...whomever did that should be banned from touching computers.

spotify.bat also needs the same modification.

The install.bat is the one that has the most problems. More on that in a second.

Also you can take a zip file capture of your directory and use nullsoft installer to generate an install from that zip file, that gets you around the "tagged as from the internet" issue AND gives you an installer. But it isn't going to give you a shortcut without using a script I don't think.
 

cewan

Senior Member
Sep 21, 2010
64
4
This should create your shortcuts.

Code:
Option Explicit
Dim oFSO, oWsh, link, javaLoc, instDir, shstart, shstop, t1, t2

Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oWsh = CreateObject("WScript.Shell")
instDir = "C:\Program Files\SpotCon"

t1 = "C:\Program Files (x86)\Java\jre6\bin\java.exe"
t2 = "C:\Program Files\Java\jre6\bin\java.exe"

If oFSO.FileExists(t1) Then
	javaLoc = t1
ElseIf oFSO.FileExists(t2) Then
	javaLoc = t2
End If

Set shstart = oWsh.CreateShortcut("C:\Users\alcaron\Desktop\Start Server.lnk")
shstart.Arguments = "-jar start.jar jetty.port=1258"
shstart.Description = "Spotify Controller"
shstart.IconLocation = instDir + "\resources\icon.ico,0"
shstart.TargetPath = javaLoc
shstart.WorkingDirectory = "C:\Program Files\SpotCon\server"
shstart.Save

Set shstop = oWsh.CreateShortcut("C:\Users\alcaron\Desktop\Stop Server.lnk")
shstop.Arguments = "/F /fi " + CHR(34) + "IMAGENAME eq java.exe" +  Chr(34)
shstop.Description = "Spotify Killer"
shstop.IconLocation = instDir + "\resources\icon_kill.ico,0"
shstop.TargetPath = "C:\Windows\System32\taskkill.exe"
shstop.WorkingDirectory = "C:\Windows\System32"
shstop.Save

I downloaded Nullsoft (http://nsis.sourceforge.net/Main_Page) and tried your code above, but it didn't work at all to compile :-(
 

AustinHook

New member
Sep 22, 2011
4
0
Unable to queue up multiple files to sftp from Gallery, only takes 1 file.

Downloaded Instant Upload this evening. Using SFTP to upload from the gallery in my HTC Desire Android phone. Seems to be able to only upload one jpg at a time when I select all. Hope you can get multiple file selections working eventually.

Austin Hook Milk River, Alberta, Canada
 

cewan

Senior Member
Sep 21, 2010
64
4
Downloaded Instant Upload this evening. Using SFTP to upload from the gallery in my HTC Desire Android phone. Seems to be able to only upload one jpg at a time when I select all. Hope you can get multiple file selections working eventually.

Austin Hook Milk River, Alberta, Canada

it works,you just have to enable queueing
 

ddback

Member
Aug 15, 2010
33
4
First-thanks for the app, I'll put my app thoughts in a separate reply.

RE: Packaging apps
I too, in a former existence, was an app packager. It really isn't that hard, at a basic level, but can get some interesting complexities as you progress.

I still use my old Wise Studio to cleanup and customize my own installers/tweaks, etc. It's not great for 7/Vista, but so long as the app is simple it's ok.

There's a free MSI Creator/Editor out there called InstEd - check it out on insted dot com.

Check it out - the "advanced" version is $29.99. I haven't done much with it yet, but for free it's hard to beat.

If you guys want to swap MSI's and VBScripts on this-maybe we should spin up another thread just for the packaging piece.

Oh and I'll vouch for Alcaron's ideas about paths/shortcuts/vbs...you definitely have to be careful about assuming anything. I tend to do a LOT of validation in my scripts and try to fail out gracefully (and log it!), especially if I don't know where the package will be deployed. I log darn near every single line of my scripts - I like to know exactly where it fails.

---------- Post added at 04:28 PM ---------- Previous post was at 04:11 PM ----------

I'm likin' the app so far-makes using my SFTP server much more convenient!

Some ideas for features/mods:
I like the "use queue/add to queue" functionality, but it seems the queue will only process if I then open the app and start the processing. I guess what I'm looking for is a background processing - so I add a file to the queue, and the queue processes in the background so I can then go add more files to it. Along with this idea, maybe a setting (to with enabling queue) where the queue delays starting for a couple minutes.

The rules are a creative approach -I wouldn't have thought of that. Perhaps you can add a "Target Folder" option, with folders that the user pre-defines (similar to how rules are predefined). So when a file is selected for sending with Instant Upload, if you have any Target Folders defined it will popup a list. Otherwise it just goes to the default config.

Just some ideas-bounce them around the users and see what some other people think. They may come up with some interesting twists.

Thanks for the app!
 

cewan

Senior Member
Sep 21, 2010
64
4
First-thanks for the app, I'll put my app thoughts in a separate reply.

RE: Packaging apps
I too, in a former existence, was an app packager. It really isn't that hard, at a basic level, but can get some interesting complexities as you progress.

I still use my old Wise Studio to cleanup and customize my own installers/tweaks, etc. It's not great for 7/Vista, but so long as the app is simple it's ok.

There's a free MSI Creator/Editor out there called InstEd - check it out on insted dot com.

Check it out - the "advanced" version is $29.99. I haven't done much with it yet, but for free it's hard to beat.

If you guys want to swap MSI's and VBScripts on this-maybe we should spin up another thread just for the packaging piece.

Oh and I'll vouch for Alcaron's ideas about paths/shortcuts/vbs...you definitely have to be careful about assuming anything. I tend to do a LOT of validation in my scripts and try to fail out gracefully (and log it!), especially if I don't know where the package will be deployed. I log darn near every single line of my scripts - I like to know exactly where it fails.

---------- Post added at 04:28 PM ---------- Previous post was at 04:11 PM ----------

I'm likin' the app so far-makes using my SFTP server much more convenient!

Some ideas for features/mods:
I like the "use queue/add to queue" functionality, but it seems the queue will only process if I then open the app and start the processing. I guess what I'm looking for is a background processing - so I add a file to the queue, and the queue processes in the background so I can then go add more files to it. Along with this idea, maybe a setting (to with enabling queue) where the queue delays starting for a couple minutes.

The rules are a creative approach -I wouldn't have thought of that. Perhaps you can add a "Target Folder" option, with folders that the user pre-defines (similar to how rules are predefined). So when a file is selected for sending with Instant Upload, if you have any Target Folders defined it will popup a list. Otherwise it just goes to the default config.

Just some ideas-bounce them around the users and see what some other people think. They may come up with some interesting twists.

Thanks for the app!

Interesting with the first part about MSI, is there any chance you could try and make one for the Spotify Controller Server? That would be just awesome!! :)
Anywho, that discussion should really continue in the Spotify Controller thread, http://xdaforums.com/showthread.php?t=952704 (or a new thread).


About the Instant Upload feature requests. I like the way you are thinking, and I have been thinking in that direction for a while as well. At least with the predefined folders. The background work would mean a bit more work, as I guess I would have to create a service, and I am not sure many people would use such a feature. Do you?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    I'm actually working on a couple scripts right now, because as nice as MSI's are, there isn't a really good free editor, but at least I can maybe give you some scripts that will make it a little more fault tolerant.