├── app ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── drawable │ │ │ │ ├── up.png │ │ │ │ ├── down.png │ │ │ │ ├── file.png │ │ │ │ ├── logo.png │ │ │ │ ├── plus.png │ │ │ │ ├── folder.png │ │ │ │ ├── right.png │ │ │ │ └── ic_launcher_background.xml │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_launcher.png │ │ │ │ └── ic_launcher_round.png │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── menu │ │ │ │ └── menu_main.xml │ │ │ ├── layout │ │ │ │ ├── item_connection.xml │ │ │ │ ├── content_folder.xml │ │ │ │ ├── activity_folder.xml │ │ │ │ └── register_connection.xml │ │ │ └── drawable-v24 │ │ │ │ └── ic_launcher_foreground.xml │ │ ├── java │ │ │ └── org │ │ │ │ └── kknickkk │ │ │ │ └── spider │ │ │ │ ├── Connection.java │ │ │ │ ├── Globals.java │ │ │ │ ├── DirectoryElement.java │ │ │ │ ├── PathHandler.java │ │ │ │ ├── RecyclerItemClickListener.java │ │ │ │ ├── Tasks │ │ │ │ ├── GetFilesTask.java │ │ │ │ ├── ConnectTask.java │ │ │ │ ├── UploadTask.java │ │ │ │ └── DownloadTask.java │ │ │ │ ├── FolderAdapter.java │ │ │ │ ├── RegisterActivity.java │ │ │ │ └── FolderActivity.java │ │ └── AndroidManifest.xml │ ├── test │ │ └── java │ │ │ └── org │ │ │ └── kknickkk │ │ │ └── spider │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── org │ │ └── kknickkk │ │ └── spider │ │ └── ExampleInstrumentedTest.java ├── debug │ └── output.json ├── release │ └── output.json ├── proguard-rules.pro └── build.gradle ├── settings.gradle ├── fastlane └── metadata │ └── android │ └── en-US │ ├── title.txt │ ├── changelogs │ ├── 100000.txt │ ├── 100002.txt │ ├── 100001.txt │ ├── 100004.txt │ ├── 100003.txt │ └── 100005.txt │ ├── images │ ├── icon.png │ └── phoneScreenshots │ │ ├── s1.png │ │ ├── s2.png │ │ └── s3.png │ ├── short_description.txt │ └── full_description.txt ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .idea ├── vcs.xml └── codeStyles │ └── Project.xml ├── README.md ├── gradle.properties ├── gradlew.bat ├── gradlew └── LICENSE /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/title.txt: -------------------------------------------------------------------------------- 1 | Spider 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100000.txt: -------------------------------------------------------------------------------- 1 | This is the first release 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100002.txt: -------------------------------------------------------------------------------- 1 | Fixed serious upload bug 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100001.txt: -------------------------------------------------------------------------------- 1 | Code cleanup and Null pointers fixed 2 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100004.txt: -------------------------------------------------------------------------------- 1 | Bugfixes in the connection parameters 2 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/up.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/down.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/file.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/logo.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/plus.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100003.txt: -------------------------------------------------------------------------------- 1 | Version 0.2.0 is here! 2 | 3 | Fixed square icon not showing 4 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/changelogs/100005.txt: -------------------------------------------------------------------------------- 1 | Release 0.2.2 2 | 3 | Now also handling password protected files 4 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /app/src/main/res/drawable/folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/folder.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/drawable/right.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/fastlane/metadata/android/en-US/images/icon.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/short_description.txt: -------------------------------------------------------------------------------- 1 | This application enables you to connect to your SFTP server using a password or a PEM private key. 2 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/s1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/s1.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/s2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/s2.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/s3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickdurante/Spider/HEAD/fastlane/metadata/android/en-US/images/phoneScreenshots/s3.png -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/debug/output.json: -------------------------------------------------------------------------------- 1 | [{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"app-debug.apk","fullName":"debug","baseName":"debug"},"path":"app-debug.apk","properties":{}}] -------------------------------------------------------------------------------- /app/release/output.json: -------------------------------------------------------------------------------- 1 | [{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":10,"versionName":"0.1.9","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}] -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #008577 4 | #00574B 5 | #D81B60 6 | 7 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Tue Jun 11 17:53:53 CEST 2019 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 16dp 3 | 4 | 16dp 5 | 16dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- 1 | 5 | 10 | 11 | -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/full_description.txt: -------------------------------------------------------------------------------- 1 | This application connects you to your SFTP server. 2 | 3 | As login methods you can use a password or your PEM private key. 4 | At the moment only PEM keys are supported, so check to have it in the correct format. 5 | With release 0.2.2 also encrypted PEM keys are supported. 6 | 7 | You can browse your files in the SFTP server and download them with a long press, or upload new ones using the '+' floating button. 8 | It also supports swipe down to refresh. 9 | -------------------------------------------------------------------------------- /app/src/test/java/org/kknickkk/spider/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package org.kknickkk.spider; 2 | 3 | import org.junit.Test; 4 | 5 | import static org.junit.Assert.*; 6 | 7 | /** 8 | * Example local unit test, which will execute on the development machine (host). 9 | * 10 | * @see Testing documentation 11 | */ 12 | public class ExampleUnitTest { 13 | @Test 14 | public void addition_isCorrect() { 15 | assertEquals(4, 2 + 2); 16 | } 17 | } -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Spider 3 | Settings 4 | Sign in 5 | Email 6 | Password 7 | Sign in or register 8 | Sign in 9 | "Welcome !" 10 | Not a valid username 11 | Password must be >5 characters 12 | "Login failed" 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/java/org/kknickkk/spider/Connection.java: -------------------------------------------------------------------------------- 1 | package org.kknickkk.spider; 2 | 3 | 4 | public class Connection { 5 | private String ip; 6 | private int port; 7 | private String user; 8 | private String key_path; 9 | 10 | public Connection(String ip, int port, String user, String key_path) { 11 | this.ip = ip; 12 | this.port = port; 13 | this.user = user; 14 | this.key_path = key_path; 15 | } 16 | 17 | 18 | public String getIp() { 19 | return ip; 20 | } 21 | 22 | public int getPort() { 23 | return port; 24 | } 25 | 26 | public String getUser() { 27 | return user; 28 | } 29 | 30 | public String getKey_path() { 31 | return key_path; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 14 |