Skip to content

feat: opt-in anonymous usage check-in; Obtainium and Privacy in the README - #97

Open
xservzeroman wants to merge 2 commits into
fix/beta2-quit-bitratefrom
feat/usage-checkin
Open

xservzeroman wants to merge 2 commits into
fix/beta2-quit-bitratefrom
feat/usage-checkin

Conversation

@xservzeroman

Copy link
Copy Markdown

Opt-in anonymous usage check-in for daily / monthly active users, and Obtainium + Privacy in the README.

Changelog

  • home/Usage.kt: posts one MoonCast.dailyCheckIn signal a day to TelemetryDeck's ingest API v2 (nom.telemetrydeck.com/v2/, plain HttpURLConnection, no SDK) when the user said yes.
    • Payload: app version, tv / handheld, Android version, manufacturer + model, and MoonCast.used.pc/ps5/xbox since the last check-in.
    • clientUser = SHA-256 of a random install UUID kept in the app's prefs. No names, addresses, games, accounts.
    • Debug builds send with isTestMode. Failures are logged and retried another day.
  • Only builds with TELEMETRY_APP_ID (from -PmcTelemetryAppId or env MOONCAST_TELEMETRY_APP_ID, app/build.gradle) ask or send. Forks, CI's plain builds and test builds don't.
  • Handheld + TV home: the question once, 1.5 s after the home opens, with No thanks selected; Settings, About switch afterwards. TV confirm() gains no, noPicked, onNo.
  • Game, Ps5StreamActivity, XboxStreamActivity: Usage.used(...) on start (only stored when opted in).
  • README: install section for the beta file names, Obtainium one-tap links (prereleases on, titles ^MoonCast [0-9.]+( |$), APK filter per app), Privacy section.
  • Build: test246 (no app ID, so the check-in is off). Lint: 0 errors. Stacked on fix: quit prompts pick Cancel, Recent only on a real start; remove On battery #96.

To test (once there's an app ID)

  • Build with -PmcTelemetryAppId=<id>: the question appears once; No thanks never sends; Yes sends one signal (log usage check-in sent), and not again that day; the switch in About turns it off.
  • Obtainium: open the README link on a phone with Obtainium; it should add MoonCast and offer 1.0-beta2, not the test builds.

🤖 Generated with Claude Code

… only), Obtainium links and Privacy in README (test246)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants