Get started in 4 steps

Add the Closed Test SDK to anyapp, install Dozenflow, open your build once so the test is created, then set up Connections so other testers can join correctly.

Stats stay empty until the SDK runs

Install Dozenflow, then open your anyapp build with the SDK at least once. That first POST /v1/init creates the test card — without it there is nothing to connect. Sessions in Stats appear after real opens; empty Stats before that is normal.

Your setup checklist

Progress is saved in this browser.

  1. Add the SDK to anyapp

    Add the Maven dependency to the Android app you want to test. The SDK sends the activity signals that Dozenflow shows later.

    Where: Android Studio · SDK integration guide

  2. Install Dozenflow

    Get the organizer app on your device and sign in. You will use it to manage the test and see SDK activity.

    Where: Google Play

  3. Open anyapp with the SDK

    Install and launch your anyapp build that includes the Closed Test SDK. The first successful init creates the test on the server — without this step there is no test card and Connections cannot be set up.

    Where: Your device · anyapp with SDK (owner email + Group URL + Play invite in init)

  4. Add your connections

    In Dozenflow, open Connections for the test and fill in the two links people need to join it: your Google Group join URL and your Play invite link. This is what we mean by “add connects”.

    Where: Dozenflow mobile app · Open connections

Quick copy — SDK dependency

Add the dependency, then initialize with owner email, Google Group URL, and Play invite link. Full guide: /docs/sdk.

dependencies {
    implementation("com.groundspaceteam:closed-test-sdk:0.2.21")
}

What you'll see

  • First signal: a successful POST /v1/init after a tester opens anyapp — then session events in Stats.
  • Daily picture: active testers, session counts, and short-session flags — proof for obligations.
  • Campaign: quorum, streak, and phase toward Play's 12 testers × 14 days rule (after activate).
  • Remind: push to participants who installed Dozenflow (not to anyapp alone).

anyapp ≠ Dozenflow. Testers install your APK; organizers use Dozenflow for proof and mutual invites. Private BYOT remains possible — it does not define the brand.

Get started