Android App to save shares from any app into a file.

Related tags

App saveto
Overview
logo

Save To…

Android App to save shares from any app into a file.

Download · Website · Contact

About the Project

Exporting data from any app into a file made simple. Just open the share options, select "Save To…" and choose the target file. Done. No permissions required.

Share dialog screenshot Save dialog screenshot Success screenshot

More infos on the official website: xa1.at/saveto.

Background on blog post: I Published My First App on the Google Play Store

Get it on Google Play

Tech Stack

Native Android App.

Maximum Privacy. No Permissions required. Not even internet access.

Features

  • Introduction Guide
  • Open from Share Dialog and save shared item into a file.
  • Settings

Color Reference

Color Hex
Primary Color #ff8f00 #ff8f00

Getting Started

Prerequisites

  • Android Studio
  • Java 11+
  • sh

Code Checks

Before committing run:

./debugCheck.sh

This compiles the code, runs ktlint, unit tests and android tests.

Package-Structure

  • at.xa1.saveto: main package with the most fundamental classes (like MainActivity and MainCoordinator)
    • common: generic, non-app-specific classes
      • android: generic, non-app-specific classes that are strongly related to Android.
    • di: Dependency Injection.
    • feature: sub packages contain pieces of functionality, that don't depend on other features.
    • ui: User interface components that are not feature specific.

Release

This is only relevant for the deployer.

  1. Update versionCode and versionName in versions.gradle
  2. Run:
    ./release.sh
  3. Upload app/build/outputs/bundle/release/app-release.aab to Google Play Console.

Signing

Signing is located in .signing folder. It is added to .gitignore to avoid accidental committing. Extract release.jks (and private_key.pepk) from Password Manager to .signing.

Create .signing/keystore.properties:

keyAlias=releaseKey
keyPassword=[PASSWORD FROM PASSWORD MANAGER]
storeFile=.signing/release.jks
storePassword=[SAME PASSWORD FROM PASSWORD MANAGER]

Create Screenshots

  • Start Emulator.
  • Make sure status bar is empty.
  • Make sure battery, network and wifi are full (emulator settings).
  • Use gesture navigation to hide navigation buttons (android settings).
  • Set time to: 04:01 (android settings).
  • Use tests in PlayStoreScreenshots for individual screens:
    • Clear screenshot folder on emulator:
      adb shell rm -rf "/storage/emulated/0/Pictures/screenshots"
    • Run PlayStoreScreenshots tests
    • Download screenshots from emulator:
      adb pull "/storage/emulated/0/Pictures/screenshots"

Roadmap

  • Return OK Result when finished successfully
  • Show KB copied
  • Show Success
  • Show Error
  • Propose Filename
  • Support Plain Text
  • Make Scrollable
  • Dependency Injection
  • List open source licenses
  • Settings
  • Intro
  • Screenshots
  • Feature graphic
  • https://xa1.at/saveto/ site
  • Review package and file structure
  • Show version in settings
  • Create screenshots using Screenshot.capture() instead of doing it manually.
  • CI setup
  • Bug: Shouldn't be possible to open from recents.
  • Abort (back button)
  • Support multiple files shared at once.

License

Distributed under BSD 3-Clause License. See LICENSE for more information.

Contact

Attributions

README inspired by Louis3797/awesome-readme-template.

Google Play and the Google Play logo are trademarks of Google LLC.

You might also like...
ToDo list is a sample project for save task and complete they. developed with Kotlin , Coroutins and Dagger-Hilt Dependency injection.
ToDo list is a sample project for save task and complete they. developed with Kotlin , Coroutins and Dagger-Hilt Dependency injection.

ToDo list is a sample project for save task and complete they. developed with Kotlin , Coroutins and Dagger-Hilt Dependency injection.

A News Application Shows Breaking News of the Country with a feature to save News for future Use.
A News Application Shows Breaking News of the Country with a feature to save News for future Use.

A News Application Shows Breaking News of the Country with a feature to save News for future Use.You can search news on any topic.Used all latest stuffs in android like Navigation Component, MVVM Architecture, Retrofit, Room DataBase, Kotlin Corutines etc

This is a Interview application which made by me in interview task what it do? that will give you the result from Api and also save data in the cache using RoomDb so that we can access it offline.
This is a Interview application which made by me in interview task what it do? that will give you the result from Api and also save data in the cache using RoomDb so that we can access it offline.

Clean-MVVM-App An Android application built using Clean + MVVM architecture. Components used in the app. Kotlin - As a programming language. Material

Android app that allows you to draw anything and turn it into a jigsaw puzzle.
Android app that allows you to draw anything and turn it into a jigsaw puzzle.

Android-Jigsaw-Puzzle Like to draw? Like to solve jigsaw puzzles? Try JigDraw! This is an Android app where a user draws something and use it to gener

Candash - A simple Android app that turns your phone into an instrument cluster for your Tesla Model 3 and Y
Candash - A simple Android app that turns your phone into an instrument cluster for your Tesla Model 3 and Y

What is CANdash? CANdash is an Android app that turns your Android device into a

AptiBit is an android application that uses Firebase firestore to store the questions and categorize different types of aptitude questions into their categories
AptiBit is an android application that uses Firebase firestore to store the questions and categorize different types of aptitude questions into their categories

AptiBit is an android application that uses Firebase firestore to store the questions and categorize different types of aptitude questions into their categories. It also uses firebase authentication service that allows you to sign in to the app using your custom credentials.

Idaesbasic - An all in one project manager that stores everything in files directly into your project! 🤯
Idaesbasic - An all in one project manager that stores everything in files directly into your project! 🤯

Idaesbasic - Project-Managment redefined Idaesbasic Everything is a file 💾 With this project managment tool, everything is a file. Your todolists are

Bringing webhooks into Telegram. Push messages to chats via URL with a simple API.
Bringing webhooks into Telegram. Push messages to chats via URL with a simple API.

Webhooks over Telegram (WoT) WoT aims to provide a simple API for registering webhooks and sending messages to Telegram chats via them using a single

Quote-App-Kotlin - Quote App Based on MVVM clean architecture getting quote from json file stored in assets

Quotify - Simple Quotes App This app shows the use of ViewModel and ViewModelFac

Owner
Daniel Gehrer
Daniel Gehrer
android-delicious Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play.

Delicious Android Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play. Fea

Alexander Blom 137 Nov 20, 2022
Paimondex App is an Android App that contains super mini wiki for playable characters from Genshin Impact, where you can favorite to save the character

Paimondex App is an Android App that contains super mini wiki for playable characters from Genshin Impact, where you can favorite to save the character. This could also show you the description of the each character with their talents and constellations.

Ervin Suriandi 1 Apr 13, 2022
Android News App built in kotlin with implementation of MVVM architecture, android navigation components and retrofit. Displays news to users allowing them to share and save news.

News-App Android news app built in kotlin that fetches news data from news api with Retrofit and displays news to users. This App follow MVVM architec

Raj Manjrekar 16 Dec 29, 2022
A beautiful android Quotes App where you can read and save quotes.

This repository contains source code of a Quotes app, which helps you stay motivated by providing best picked quotes stated by famous personalities. This app uses zen quotes api, for retrieving quotes.

Gourav Khunger 34 Nov 14, 2022
A beautiful android Quotes App where you can read and save quotes.

QuotesApp A beautiful Quotes App where you can read and save quotes. This repository contains source code of a Quotes app, which helps you stay motiva

Gourav Khunger 24 Nov 12, 2021
A manga reader app that can be used save / search / find and read latest manga / manhwa

A manga reader app that can be used save / search / find and read latest manga / manhwa

Sebin P Johnson 3 Nov 20, 2021
App demonstrates how to use Room to save, read, update, and delete inventory items in a SQLite database.

Inventory - Solution Code Solution code for Android Basics in Kotlin. Codelab: Android Jetpack - Room. Introduction This app is an Inventory tracking

Google Developer Training 75 Dec 30, 2022
RedditNews - A simple application to display the top news from the Reddit API site and save your favorites to a local database.

RedditNews - A simple application to display the top news from the Reddit API site and save your favorites to a local database. Arch

null 1 Aug 28, 2022
The simplest version of a notepad application with the feature to save pictures on a note.

PhotoNotePad Easy to write, read and organize notes with photo(s). Feature A note has... title content date color pin images Easy to write a note. Pro

seungmin shin 1 Dec 5, 2021
TMDbHub - Listing movies using the TMDb API. You can filter results, view details, and save them to a collection

TMDb Hub Listing movies using the TMDb API. You can filter results, view details

David Varga 4 Dec 30, 2021