cachapa / remotegallery Goto Github PK
View Code? Open in Web Editor NEWAccess your SSH-hosted pictures remotely from your Android device
Home Page: http://cachapa.net/?page_id=429
License: GNU General Public License v3.0
Access your SSH-hosted pictures remotely from your Android device
Home Page: http://cachapa.net/?page_id=429
License: GNU General Public License v3.0
Remote Gallery is an application for Android devices which connects to a SSH server where your pictures are available and downloads the images to your device. It was envisioned to be a quick solution to a problem I frequently had: I wanted to show someone a picture from my collection, but even though my complete collection is available on my personal server (as part of my backup solution), there was no easy way to find the picture I was looking for. Even if I knew on which album the picture was, there was no way to find it without downloading the whole album. With pictures sometimes reaching 4MB per file, it was a difficult procedure over a mobile connection, not to mention bandwidth limits or areas of low network reception. Remote Gallery saves bandwidth and speeds up the download by reducing the size of the images on the server prior to being sent. The images are saved locally on the device, displayed as thumbnails, and are made available to other apps on the device. Remote Gallery requires a functional server component. Configuration instructions can be found at: http://cachapa.net/?page_id=429
Rather than a complicated session management system (which re-invents the wheel) or having to wait for extra session initiation overhead equal to the number of pictures transferred, there is an easy alternative: use the ImageMagick tools to stitch the pictures together into one (using montage), transfer it in a single session, then slice it up on the phone (since you're already using the library to resize the image, combining them in the same command incurs little additional overhead).
A more simple alternative is to concatenate the images into a (technically invalid) byte stream and transfer that to the phone, slicing it based on the known original size of each file.
Currently RemoteGallery resizes images to the local device's resolution.
A simple option to either have 1x, 2x, or full resolution.
Have a menu entry on the image viewer to open the image on the Gallery app.
Hi,
I followed your guide to set this up (I already have SSH connections to my server, never used Dropbear for it though) but I get that the string is too long.
The SSH connection seems alright when runnig the test connection in the client. But the row after that says:
/data/data/net.cachapa.remotegallery/files/ssh:
exited: string too long
What is that?
Quotation marks in file names cause the download to fail.
They should be escaped prior to being fed to the ssh download.
If there is a colon in the filename of an image, it chokes.
“Error:/mnt/sdcard/RemoteGallery/1/cache/$filename.jpg.temp (Invalid argument)”
I suspect this is related to the ssh command that transfers the file to android.
Thanks!
Wiki page on github does not include a way to contact developer. Maybe I am lazy, but I will keep looking, in the mean time, please update wiki with instructions on how to contact developer. Also coknsider adding dev contact info to website referrenced in the in-app help.
I have not even tried my rsa dropbear key yet, but I was hoping to find out whether it is supported or not. Maybe this shows my novice linux experience but for the less educated, knowing if rsa (instead of just dss) is supported would be nice.
Thank you for making such a cool app!
Long-form options are particularly variable across UNIX variants, notably including OS X. The option ‘-p’ is a synonym that should be much more reliable than the current ‘–indicator-style=slash’ and I’ve verified its validity on OS X’s variant (as well as the GNU version generally seen on Linux desktops).
Additionally, all option arguments must come before the first file in many BSD versions of ls.
My solution to both these issues is a simple patch:
--- a/src/net/cachapa/remotegallery/ssh/SshOutputReader.java
+++ b/src/net/cachapa/remotegallery/ssh/SshOutputReader.java
@@ -20,8 +20,8 @@ public class SshOutputReader extends Ssh {
public ArrayList<DirEntry> listDir(String path, final LogCallback logCallback) {
String remoteCommand = "ls" +
- " '" + serverConf.remotePath + path + "'" +
- " --indicator-style=slash";
+ " -p" +
+ " '" + serverConf.remotePath + path + "'" ;
final ArrayList<DirEntry> dirEntries = new ArrayList<DirEntry>();
LogCallback dirListCallback = new LogCallback() {
Allow zooming in when viewing images.
This is a tough one. A good implementation would require a lot of custom code.
Using a WebView would also work, but it's not an ideal user experience.
Could you add a feature (implemented similar to the share feature) which deletes the file locally and also issues a ssh rm $filename to the remote location? Perhaps rename would be another useful feature? These would make remotegallery a somewhat competent photo manager as well as great gallery viewer.
Some work has already been done to make Remote Gallery look better on tablets, but it would be nice to have multiple panes using Android fragments.
Specifically:
Also, use the standard Android action bar instead of a custom one.
Reported on the blog entry:
Re command switches for ls the –indicator-style=slash is not supported on *BSD, use -p instead, bsd ls man page, should be supported on both.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.