ShizuStore

CloudSync

StardewValleyMods

1.3.2 · GitHub

Download APK
Games Android 7.0+ 4 months ago GPL-3.0
9 ShizuStore
1.7k GitHub
30 Stars
99 MB Size

More about this app

An app that allows you to sync your Stardew Valley saves across multiple devices

CloudSync Mobile

CloudSync Mobile is an Android app that allows you to sync your Stardew Valley saves across multiple devices using cloud storage services like Dropbox, and Google Drive.

SMAPI Mod

Installation

  1. Make sure you have Android 7.0 or higher
  2. Download the latest release from Releases, check your device's architecture and download the correct one, if you are unsure you can download the universal apk

Features

  • Upload your saves to cloud storage services
  • Download your saves from cloud storage services
  • Backup your saves when uploading
  • Get a warning if an existing save has more progress when uploading or downloading

FAQ

Which storage mode should I use?

You should always use the legacy mode if its available, its the fastest and most reliable, if you're unable to use it, shizuku mode is the second fastest, if you don't wan't to mess with shizuku, you should use SAF mode but it's the slowest and can't be used on Android 13 and above, if the selected saves path isn't a child of the Android folder the app will always use legacy mode.

Todo

  • Add support for other cloud storage services

Screenshots

Saves Screen Saves Screen
Backups Screen Backups Screen
Settings Screen Settings Screen
Search Search
Save Info Save Info
Cloud Settings Cloud Settings

Building

Open a terminal in the project directory and install the project dependencies using the following command

npm install

after that run the expo prebuild command

npx expo prebuild

Debugging

To debug the app start your emulator or connect your physical device with adb and run the following command

npx expo run:android

Release

  1. Create a keystore file in /src/android/app
  2. Create a gradle.properties file in (%userprofile%/.gradle | ~/.gradle) and add the following variables:
    CLOUDSYNC_UPLOAD_STORE_FILE=Your Keystore File Name
    CLOUDSYNC_UPLOAD_KEY_ALIAS=Your Keystore Alias
    CLOUDSYNC_UPLOAD_STORE_PASSWORD=Your Keystore Password
    CLOUDSYNC_UPLOAD_KEY_PASSWORD=Your Keystore Password
    
  3. Open a teminal in /src/android and run the following command to build a bundle
    gradlew app:bundleRelease
    
    or this command to build apks for all architectures
    gradlew app:assembleRelease
    
  4. The bundle will be in src/android/app/build/outputs/bundle/release and the apks will be in src/android/app/build/outputs/apk/release
  5. If you're having problems with the path being too long, copy the project to the root of your drive and run the commands from there
Close

How Shizuku is used

Can sync Stardew Valley saves in protected storage via `Shizuku` privileged file access.

This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.

How this app uses Shizuku

Shizuku is used to read and write Stardew Valley saves stored in protected app storage so they can be synced with the cloud.

  • Browse local saves: the app lists save folders and their files in the protected game folder through Shizuku to show available saves.
  • Read save contents: the app opens and reads save files through Shizuku to show farm details and to upload saves to the cloud.
  • Restore cloud saves: the app creates folders, writes downloaded files, replaces existing saves, and cleans up temporary files through Shizuku when downloading from the cloud.

Android APIs or commands used

  • java.io.File
  • java.io.RandomAccessFile
  • java.nio.file.Files.isDirectory
  • java.nio.file.Files.isRegularFile
  • java.nio.file.Files.list
  • java.nio.file.Files.size
  • java.nio.file.Files.createDirectories
  • java.nio.file.Files.move
  • java.nio.file.Files.delete

Notable details

Outside the restricted game folder, or when legacy mode is selected, the app uses direct file access instead of Shizuku. Inside the restricted folder it can also use system file picker access as an alternative to Shizuku.

Close

Changelog

What's new for version 1.3.2

What's Changed

Full Changelog: https://github.com/FawazTakahji/CloudSync-Mobile/compare/1.3.1...1.3.2

Close

Permissions

11 permissions requested

  • android.permission.INTERNET
  • android.permission.READ_EXTERNAL_STORAGE
  • android.permission.SYSTEM_ALERT_WINDOW
  • android.permission.VIBRATE
  • android.permission.WRITE_EXTERNAL_STORAGE
  • android.permission.MANAGE_EXTERNAL_STORAGE
  • android.permission.USE_BIOMETRIC
  • android.permission.USE_FINGERPRINT
  • app.FawazT.CloudSync.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
  • moe.shizuku.manager.permission.API_V23
  • com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE
Close

Sources

5 sources

1.3.2 Universal GitHub · app.FawazT.CloudSync
Selected Download
1.3.2 arm64-v8a GitHub · app.FawazT.CloudSync
Download
1.3.2 armeabi-v7a GitHub · app.FawazT.CloudSync
Download
1.3.2 x86 GitHub · app.FawazT.CloudSync
Download
1.3.2 x86_64 GitHub · app.FawazT.CloudSync
Download