gyoshuku - Privacy Policy

The Android app com.gyoshuku.app

Last updated: 2026-08-25

gyoshuku collects nothing. It has no accounts, and no analytics, advertising or crash-reporting SDK of any kind. The developer runs no service on your behalf and receives no data from the app - not usage data, not identifiers, not diagnostics, not anything.

gyoshuku plays condensed audio and re-timed transcripts for Japanese immersion study. It is a client for a server that you run and you name. This page describes what the app does with data on your device and on the network, and it is written to describe this app specifically rather than to recite the usual boilerplate.

The one server the app talks to

gyoshuku connects to exactly one address: the server URL you type into Settings. There is no default server, no fallback host, no update check and no telemetry endpoint. If you never enter an address, the app makes no network requests at all.

That server is normally a gyoshuku serve process on a machine you control, on your own network. Whatever it logs, stores or does with your requests is governed by that machine, not by this app and not by its developer. The developer has no access to it and cannot see your library, your listening history or your requests.

Your access token

If your server requires one, you supply a bearer token in Settings. The app:

App backup is switched off in the app's manifest, so the token is not copied into Android's cloud backup or into a device-to-device transfer.

Plain HTTP is permitted, and what that means

Home servers are usually reached over plain http:// on a local network, so the app permits it. It permits it narrowly: an http:// address is accepted only when its host is a private address (RFC 1918, loopback, link-local, carrier-grade NAT, or an IPv6 unique-local address). Anything else must be https://.

On a plain http:// address, your requests and your bearer token travel that local network unencrypted, and anyone with access to that network could read them. Using an https:// address changes this and needs no change to the app.

What is stored on your device

Audio and transcripts you download for offline use are written to the app's own external files directory, which belongs to the app and which Android removes when you uninstall it. Nothing there is uploaded or made visible to the developer. On Android 8 and 9 an app holding storage permission can read that directory; from Android 10 the platform's scoped storage prevents it.

You can delete individual downloads from within the app. Uninstalling the app removes everything it stored, including the downloads, your settings and your token.

Permissions

The app requests internet and network-state access (to reach your server), foreground-service permissions (so playback and downloads keep running while the app is in the background) and notification permission (for the playback and download notifications). It requests no location, contacts, camera, microphone or phone permissions, and no access to shared device storage.

Children

The app is not directed at children and collects no personal information from anyone, of any age.

Changes to this policy

If the app's behaviour changes in a way that affects this page, the page will be updated and the date at the top will change with it.

Contact

Questions about this policy or about the app go to the developer on GitHub: github.com/bspar.