Giter Site home page Giter Site logo

nn1ks / remotefiles Goto Github PK

View Code? Open in Web Editor NEW
143.0 6.0 31.0 8.63 MB

An open source SFTP client for Android and iOS

License: GNU General Public License v3.0

Java 7.83% Ruby 1.06% Objective-C 8.23% Dart 79.84% HTML 3.05%
flutter dart android ios sftp sftp-client file-manager app

remotefiles's People

Contributors

nn1ks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

remotefiles's Issues

Display status of in-progress & completed downloads

Currently downloaded files are done so entirely silently in the background with no informing of the user when it has failed, in progress or completed. A queue list similar to FX's or a temporary notification would solve this

Downloads also seem to stop when the app is no longer in the foreground, downloads should probably be handled by a background process instead of along with the main activity to prevent this.

crash when try dissconnect current connection

EXPECTED BEHAVIOR

the application should be able to disconnect the connection properly when the user wants to disconnect the current connection

ACTUAL BEHAVIOR

when the user wants to disconnect the latest connection this application will crash and stop working

STEP TO REPRODUCE

  • install and open the app
  • clik on + button
  • create a new SFTP connection then click done
  • then chose your connection
  • click on lightning icon and click disconnect
  • note the error

ERROR RECORDING

https://youtu.be/qq4aN2oGjFg

BROWSER

ANDROID: ANDROID.6.1
DEVICE : OPPO NEO 5
APP : REMOTE FILE 0.0.4 [Beta]

Process: com.niklas8.remotefiles, PID: 4222
java.lang.NullPointerException: Attempt to read from field 'com.jcraft.jsch.ChannelSftp sq.flutter.ssh.SshPlugin$SSHClient._sftpSession' on a null object reference
	at sq.flutter.ssh.SshPlugin$14.run(SshPlugin.java:471)
	at java.lang.Thread.run(Thread.java:818)```

Add Share button for files

Requesting to have a Share button added so files can be shared to other apps. Currently there doesn't seem to be one

ssh-key connection

I would like to see the function of connecting to the server via sss keys

[Feature request] Download manager & notifications

Is your feature request related to a problem? Please describe.
When trying to download a file, there is no immediate confirmation that it started, when going back to homepage or switching to other apps, there is no way to track progress, and in any case, there is no way to pause or cancel.

Describe the solution you'd like

  1. A download manager, that lists all active, completed and failed downloads, allowing to pause, resume, cancel, retry, and open download folder.
  2. Notifications for each download in progress or failed state and allowing same actions as above.

Describe alternatives you've considered
None

Additional context
None


Thanks

Black screen

Describe the bug
The app starts with a black screen and nothing happens

Here a screen of what i get
Screenshot_20190930-072718

I dont know how you can reproduce the error but if you need i can send you the logcat

Smartphone (please complete the following information):

  • Samsung j6 plus
  • Android 9
  • Chrome
  • Last

SFTP service discovery and easy connection

Hi,

I'm the author of the SFTP Server SFTPGo (https://github.com/drakkan/sftpgo).

Recently some users asked for a portable mode, in SFTPGo, that allows to easily share files between pc and mobile devices:

drakkan/sftpgo#51

I'll add basic support for this soon.

As you can see in the bug report my users asked for a way to easily estabilish a connection from the mobile device, for example a QR Code or something similar.

I think that for implement this feature I need to agree a protocol with an app.

I think an easy way could be:

  1. SFTPGo advertises the service using multicast dns,
  2. Your app should search for sftp services and let the users connect.

I'm open to other solutions too, I prefer an open protocol and no a proprietary one.

Are you interested to add this feature to your app?

Thanks!

[Feature request] FTP Support

Hey I really like this app and it's design (and the fact that it's ad-free and doesn't have in-app payments)

There is one thing I miss in this app though: I'd like to be able to connect to my FTP server as well so I don't have to use seperate apps.

Trackers accidentally added?

While your app was free of trackers up to now, it seems like the last version added a bunch of them:

  • Google Mobile Services
  • Firebase
  • Firebase Analytics

That could be some other lib have been drawing them in, and it was not intentionally (at least I hope so – as with these 3 libraries included, your app is no longer fully FOSS). Could you please check and remove them again? Thanks!

Can't paste into password field

The password field doesn't allow the user to paste into it. Reproducible on Gboard and Samsung Keyboard, also doesn't allow access to the long press context menu

Add support for ssh public key authentication

Hi!
First of all, thanks for this application, it's simple, beautiful and get the job done! And it being fully FOSS is really the icing on the cake!

But I don't really see a way to configure ssh key authentication in the app or talked about in the README.
A lot of people, like myself, just disable ssh password authentication entirely on their servers and not having ssh key support in your app make it unusable for us.

Would it be possible to add support for it? I've read rapidly the documentation of the ssh flutter package your application is using and it supports ssh key authentication using standard PEM encoded RSA keys.

There could be multiple implementation options like managing it directly in the app (like ConnectBot) or by storing the key file encrypted on the internal shared storage and have your app "just" read it for example, the password field could be used to input the private key decryption password.

Anyway, thanks again for your work, it's really appreciated!

Download and open function not working

When downloading a file the app throws an error and the file isn't downloaded.
To use the download function you can use version 0.0.4 of the app until this is fixed.
Opening a file also doesn't work because it uses the download method.

I created an issue on the ssh package shaqian/flutter_ssh#14

In Android Studio, it cannot build the source and got various errors.

Hello, I downloaded RemoteFiles APK and install it in Android Emulator, and it works really nice.

So I tried to modify some codes, so I download the source code and open it with Android Studio.

In my Android Studio Environment, it already installed flutter and dart plugin.

So I tried to build it and run in virtual Android environment but there are too many errors comes out.

the errors look like this.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Warning
──────────────────────────────────────────────────────────────────────────────
Your Flutter application is created using an older version of the Android
embedding. It's being deprecated in favor of Android embedding v2. Follow the
steps at

https://flutter.dev/go/android-project-migration

to migrate your project.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Launching lib\main.dart on sdk gphone x86 arm in debug mode...
Running Gradle task 'assembleDebug'...
Project evaluation failed including an error in afterEvaluate {}. Run with --stacktrace for details of the afterEvaluate {} error.

FAILURE: Build failed with an exception.

* Where:
Build file 'C:\Users\normal person\AndroidStudioProjects\RemoteFiles-master\android\app\build.gradle' line: 25

* What went wrong:
A problem occurred evaluating project ':app'.
> Plugin with id 'kotlin-android' not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

it seems that the error are related with gradle version so I search it in Google for several hours but there are too many solutions to apply it, and some solutions, causes another errors.

How can I run it or modify it in Android Studio and emulated in virtual Android environment.

My env versions
Android Studio : 4.1.3 (Latest)
Dart & Flutter Plugin in Android Studio : Latest version each 201.9335 and 55.1.1 version
Windows 10 (64bit)

If there is anything that you find how to open it in Android Studio please let me know. Thanks.

Support for username/password auto complete

I would like to ask support for password autocomplete features in Android version when creating a new SFTP host.
I am user of the open source package Keepass2Android.

Normally wherever I long-tap a username/password field Android displays me an "auto complete" option where I can use Keepass2.

I believe (but I don't use such feature, I always refuse to save) that if you save your passwords to your Google Account in various apps the auto complete prompt will appear offering your Google-saved password(s)

Steps to reproduce:

  • Install the Keepass2Android Password Safe app from Play
  • From within that app, configure your desired SFTP account
  • From RemoteFiles, try to create a new account
  • Long-tap on Username or Password field

Expected

Android should prompt you to "Auto Complete with Keepass2"

Actual

You just get "Paste"

Share files intent to upload local files from any app

I am asking the exact opposite of #4

From other applications, I would like to be able to upload a file to SFTP storage. This is especially useful if the file is not (easily) found on local storage, e.g. a PDF attached to an email

Examples:

  • Photos from Camera/Pictures app (which can be selected from DCIM folder today)
  • Documents attached to emails. Today I would have to save them to local storage, then update. And remember to clean the old file

This is implemented with the android.intent.action.SEND intent.

Ideally, this would open a "Select folder" wizard where user can select the SFTP connection and the the fodler within the server, then clicking a confirm button to start the upload.

I don't work with Android apps since quite long time, but I am knowledgeable and I could try to provide consulting and/or some coding to the author about this feature.

File upload not working at all

Describe the bug
Unable to upload any files.

To Reproduce
Steps to reproduce the behavior:

  1. Open a SFTP connection on my android device.
  2. Click the Upload button in the right corner.
  3. Select any files via the system file manager/ES file explorer.
  4. It jumped back to the file list screen, like nothing ever happened.

Expected behavior
The selected file is uploaded to the sftp server.

Device information

  • Device: Oneplus
  • OS: H2OS 9.0.4/Android 9
  • App Version: 0.0.11

SFTP clients should not rely on ssh commands

Describe the bug
When you create a new connection and leave the path empty the default value is ~ and this result in sending an ssh exec command to the SFTP server. An SFTP server could disable exec at all and so the app hangs and don't return the list of files.

I think the code that produces this behaviour is this (not tested):

https://github.com/niklas-8/RemoteFiles/blob/master/lib/services/connection_methods.dart#L87

To Reproduce
Steps to reproduce the behavior:

  1. Download and start sftpgo (https://github.com/drakkan/sftpgo). You have the same problem with any SFTP only server
  2. Create an user a try to login
  3. The file list hangs if you don't set a path in the connection page

Expected behavior
An SFTP client should not rely on ssh command but only on SFTP commands.
I suggest to get the current directory using the SFTP command if no path is given

Do not clear saved password when editting the profile

When I edit the profile of a server, the previously saved password will lost.

Sometimes I want to connect my laptop whose IP address is obtained via DHCP and changes often, it is frustrated to type complex password again and again.

So I hope the previously saved password can be reserved when editing the address of the server.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.