Skip to main content

AASG

AASG is a deterministic, code-first Android capture-to-publish tool. It runs capture journeys that already live in Android instrumentation tests, collects AndroidX Test Storage output, and turns it into repeatable screenshots, cut-outs, and framed video.

AASG deliberately does not replace Compose testing, UI Automator, Gradle, ADB, or FFmpeg. The app owns navigation and state; AASG owns the capture matrix, collection, metadata, rendering recipes, and stable output.

Documentation

The full guide covers first capture, the Android test contract, rendering, device-frame licensing, the complete aasg.yaml schema, semantic metadata, and every CLI command:

The site is initially served from GitHub Pages. It will move to https://aasg.pedronveloso.com/ once the custom-domain DNS record is configured.

Requirements

  • Python 3.12 or newer
  • An Android project using AGP 8+ and AndroidX Test Storage
  • ADB from Android SDK Platform Tools
  • A project Gradle wrapper
  • FFmpeg and FFprobe

Install and run

uv tool install android-automated-screengrabs
# or: pipx install android-automated-screengrabs
aasg init
aasg config validate
aasg doctor
aasg capture

When --device is omitted, capture uses the only online ADB-authorized device or emulator. If several are online, an interactive run lists them for selection; a non-interactive run requires --device in that case. A previous capture selection never pins the device.

For source development, run uv sync and then uv run aasg --help.

Configuration schema 9 infers AndroidX Test Storage source paths from capture IDs, locale, theme, and artifact type. Instrumentation tests can use aasg-testkit path builders to write those files. Publication directories still use publish_dir; AASG generates published filenames from capture IDs and selected variants. See the configuration reference for migration from schema 8.

Released versions are published to PyPI. AASG still requires the Android SDK Platform Tools, a Gradle wrapper, FFmpeg, and FFprobe; run aasg doctor after installation to check the local prerequisites and encoders needed by configured renditions.

Development

uv run ruff format --check .
uv run ruff check .
uv run mypy
uv run pytest
uv build
npm ci
npm run commitlint -- --from HEAD~1 --to HEAD

Build the documentation with npm ci --prefix docs and npm run build --prefix docs.

License

AASG source code and documentation are licensed under the Apache License 2.0. Third-party device-frame media retains its own license and provenance. See THIRD_PARTY_NOTICES.md.

Metadata

Release files for android-automated-screengrabs 0.15.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for android-automated-screengrabs 0.15.0
File Size Uploaded
android_automated_screengrabs-0.15.0.tar.gz 251.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for android-automated-screengrabs 0.15.0
File Interpreter ABI Platform
android_automated_screengrabs-0.15.0-py3-none-any.whl Python 3 none any Details

Total release size: 304.4 kB

Release files / android_automated_screengrabs-0.15.0.tar.gz

Download URL android_automated_screengrabs-0.15.0.tar.gz
Size 251.7 kB
Tags Source
SHA-256 checksum
How to use checksums
47492a345bdea76acfbd4861bc5971eba90f467b24429710d23464ce688cbd3e
BLAKE2b-256 checksum
How to use checksums
279751de3f48525cc4e2dea0f5a6cec1ef57f71608088f39cdc10a64c064c9ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release files / android_automated_screengrabs-0.15.0-py3-none-any.whl

Download URL android_automated_screengrabs-0.15.0-py3-none-any.whl
Size 52.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
58c3b7c50ed8013478030d9e5fbf2c5f82797ff8e9dd8124079dac1858820ddc
BLAKE2b-256 checksum
How to use checksums
54fa185ca7468bc7c3cf3124190550d4cc750b3647201e5b0ccab6974902e366
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.15.0 This release

2 release files

0.12.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page