pithos/mobile/android/README.md

40 lines
1.7 KiB
Markdown
Raw Normal View History

# Pithos for Android
The browser app (`Pithos/web`) in a WebView, plus what a phone adds:
- **Save to Pithos** in other apps' share menus: shared files wait in a bar
above the file list and go into the open folder with *Upload here*.
- **Downloads** land in the phone's Downloads folder (MediaStore on Android 10+).
- **Upload** opens the system file picker (several files at once).
- Links to other sites open in the phone's browser; Back steps back in the app.
The page's own files ship inside the APK and are answered by the app under
the gateway's origin (`https://s3.silentmode.st`), so the page is the same
same-origin client as in a browser: sign-in, the account API and S3 go to
the network, and files are encrypted and decrypted in the page. The origin
moves to `https://pithos.silentmode.st` once that name has a DNS record
(a remembered sign-in is kept per origin, so it is asked for again once).
Sign-in needs Ed25519 in Web Crypto: an up-to-date Android System WebView
(Chrome 137 or newer).
## Build
No Gradle: JDK 8, build-tools 30.0.3 and platform android-30, like Ariadne.
```powershell
powershell -File build.ps1 # build\pithos-debug.apk
powershell -File build.ps1 -Release # build\pithos-v<version>.apk, release key
```
The release key (`release.keystore` + `release-keystore-password.txt`) is
made on the first release build and must be kept forever: Android installs
an update only when it is signed by the same key. Neither file goes in git.
## Not yet
- Your own Sia account (s3d on your computer) is not reachable from a phone;
the app opens Drives on Silent Mode, and S3 keys for them.
- Photo backup, share links from the app, Theseus ID sign-in.
- iOS (needs a Mac to build).