安装包图标

SPRAWL//RUN

Cyberpunk story missions that chase you while you run. Offline, no trackers.
新版本 0.3.0
NULL TIDE — a second campaign, ten new missions. The southern districts went
under eleven years ago, something in Pump House Seven has been apologising for
nine seconds a night ever since, and a salvage broker with a bad knee needs a
piece of paper carried across the Drowned Mile. Four new voices. Choose your
campaign on the Ops screen; each keeps its own progress.

Fixed: on a phone without Google Play Services a run could watch a healthy but
empty GPS stream and never record a metre. Fixes now
Your running app should not be a spreadsheet. It should be chasing you.

SPRAWL//RUN is a gamified running tracker wrapped around two ten-mission cyberpunk campaigns. In Sprawl Prime you are a courier in a rain-slick megacity: a job on the Ninsei strip turns into carrying something that will not stop transmitting, and ends forty floors up a corporate arcology with an intelligence that has spent nineteen years counting a heartbeat that was not there. In Null Tide the southern districts are under water, something in a pump house has been apologising for nine seconds a night, and a salvage broker needs a piece of paper carried across the Drowned Mile before the sea comes home.

YOUR MUSIC, INTERRUPTED

Bring whatever you normally listen to. Every few minutes the app takes over the audio: a radio squelch, your music drops out, and your handler talks. Then it hands your music back. Nine characters across the two campaigns, each with a distinct synthesised voice, so you know who is speaking with the phone in your pocket.

SOMEBODY IS CHASING YOU

A drone tags your gait. Collections kick in a clinic door. A corporate trace walks the cooling loop toward you. To escape you have to beat your own pace from the last three minutes — never an arbitrary number, so a pursuit is a genuine effort whether you run 4:00/km or 7:00/km, and impossible at neither. Switch them off if you would rather just run.

YOU SET THE TARGET

Before each mission, choose a time or a distance. Twelve minutes or twenty-one kilometres — the story paces itself to fit. Reach the target and the operation succeeds; stop short and it stays open for another attempt. Overshoot freely, it all counts.

TRACK EVERYTHING, SHARE NOTHING

Distance, time, calories and cleared missions for the last week and month, with per-day bars and your full run log. Calories use the ACSM metabolic equations and your body mass, not an invented multiplier. Every run keeps its GPS trace.

60 achievements across six categories, and a weekly streak you define yourself in minutes, kilometres or missions. A week still in progress never breaks a streak — only a finished week that fell short does.

The long view is there when you want it: step back through earlier weeks and months, see distance per month since your first run, and every day you ran laid out as a dot calendar. Any run replays its route at the pace you actually ran it, and exports as a GPX track for OsmAnd or anything else that reads a map.

Everything is yours to take with you. One tap exports the lot — profile, campaign progress, achievements, codex and every run with its GPS trace — as a plain JSON file you can read yourself. Import it back to restore a new phone outright, or merge it in alongside what is already there. No storage permission either way: export goes out through the share sheet, import comes in through the system document picker.

FORTY CODEX ENTRIES

Black clinics. The Turing Registry. Simstim. Entries unlock only once a character has actually mentioned them, so the codex records what you have been told rather than letting you read ahead.

GENUINELY OFFLINE

There is no INTERNET permission in the manifest, so the app itself cannot reach the network at all. No accounts, no analytics, no ads.

One honest caveat: Android's own backup service can copy app data to your Google account, the same as for most apps, if you have device backup switched on. That is the operating system, not this app — turn it off in Android's backup settings if you would rather it did not.

No Google Play Services either — the proprietary location library is excluded from the build and the AOSP LocationManager is used directly, so this runs identically on a de-Googled ROM.

NOTE ON VOICES

Spoken dialogue needs a text-to-speech engine installed. Many de-Googled builds ship none; if yours does not, the app falls back to on-screen text at speaking pace with all sound effects intact. Installing RHVoice or eSpeak NG restores the voices.

Free software,

版本

尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。

下载 F-Droid
  • 版本 0.3.0 (53) 推荐 更新于 2026-09-27

    x86_64

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 22 MiB PGP 签名 | 构建日志

  • 版本 0.3.0 (52) - 更新于 2026-09-27

    arm64-v8a

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 20 MiB PGP 签名 | 构建日志

  • 版本 0.3.0 (51) - 更新于 2026-09-27

    armeabi-v7a

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 18 MiB PGP 签名 | 构建日志

  • 新版本 0.2.2
    Fixed: the "mission active" notification never appeared. Android treated the
    notification channel as blocked, and the app never asked for permission to post
    notifications at all. Both are fixed — you will be asked once, at the start of
    your next run.

    Fixed: a mission started without GPS — location switched off, or the permission
    refused — had nothing keeping it in the foreground, so Android could freeze it
    in your pocket and the story would stop while the clock kept counting. Those
    runs now hol
  • 版本 0.2.2 (43) - 更新于 2026-09-20

    x86_64

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 22 MiB PGP 签名 | 构建日志

  • 版本 0.2.2 (42) - 更新于 2026-09-20

    arm64-v8a

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 20 MiB PGP 签名 | 构建日志

  • 版本 0.2.2 (41) - 更新于 2026-09-20

    armeabi-v7a

    该版本需要 Android 7.0 及以上版本。

    此安装包由 F-Droid 构建并签名,且保证与此源代码 tarball 保持一致。

    权限
    • 只有在前台运行时才能获取大致位置信息
      此应用可以在使用时从定位服务获取你的大致位置。必须打开你的设备的定位服务,应用才能获取位置。
    • 只能在前台获取精确的位置信息
      此应用可以在使用时从定位服务获取你的精确位置。必须打开你的设备的定位服务,应用才能获取位置。这可能会增加耗电量。
    • 查看网络连接
      允许此应用查看网络连接的相关信息,例如哪些网络存在并处于连接状态。
    • 运行前台服务
      允许此应用使用前台服务。
    • 运行“location”类型的前台服务
      允许该应用使用“location”类型的前台服务
    • 运行“specialUse”类型的前台服务
      允许该应用使用“specialUse”类型的前台服务
    • 显示通知
      允许该应用显示通知
    • 防止手机休眠
      允许此应用阻止手机进入休眠状态。
    • io.github.jbinder.sprawlrun.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 18 MiB PGP 签名 | 构建日志