圖標

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 年 9 月 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 年 9 月 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 年 9 月 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 年 9 月 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 年 9 月 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 年 9 月 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 簽章 | 建置紀錄