Releases: ebreen/shield-airplay
Release list
Shield AirPlay 2.0.1 — Reliable TV pause and resume
Shield AirPlay 2.0.1
Fixes a missing sender-notification path for TV-remote pause and resume.
Changes
- Send actual loading, playing, paused, and stopped playback states over the negotiated AirPlay reverse connection, with the matching session ID.
- Deliver state changes even when the sender stops polling. Suppress duplicate notifications and scope them to the current playback generation.
- Keep event writes on the native HTTP thread and nonblocking, so they do not block Android's UI thread or race playlist traffic.
- Correct reverse-response handling and bound its debug output.
- Preserve the TV interface and explicit-stop policy. No fake playing state and no blanket suppression of sender stops.
Verification
- Signed ARM64/ARMv7 release build completed successfully.
- APK signature, signing-certificate continuity, alignment, package/version, and packaged native libraries verified.
- Installed on NVIDIA Shield as an in-place update. Device version and APK checksum matched this asset.
- Long-pause/resume behaviour was manually confirmed working on the Shield after installation.
- Automated tests and lint were not rerun for this patch. Manual acceptance is not a claim of full mirroring/audio or all-sender regression coverage.
Download
Shield-AirPlay-2.0.1-shield.apk: signed release APK; packageno.gior.shieldairplay, version code 201.Shield-AirPlay-2.0.1-shield-source.tar.gz: corresponding source, including pinned native dependencies andSOURCE_REVISIONS.json.SHA256SUMS: checksums for both files.
This is the same APK that was manually accepted on the Shield; it was not rebuilt during publication.
Source commit: b6e2caf1749817b954dc083c2c69954c560da46c. For the documented Git-based build, clone tag v2.0.1-shield with --recurse-submodules and follow SHIELD_BUILD.md.
Repository-only housekeeping on main removes obsolete upstream store-listing assets, refreshes documentation and ignore rules, and improves CI setup and artifact retention. These changes do not alter this APK. Previous signed releases remain available for rollback.
GPLv3. No ads, subscriptions, telemetry, or paid feature gates.
Shield AirPlay 2.0.0 — Session stability and TV redesign
Shield AirPlay 2.0.0
A TV-first redesign and a fix for paused video sessions being lost when an idle AirPlay control connection closes.
Changes
- Preserve the paused video session across idle transport closure and activity transitions. Explicit stop remains authoritative, with the existing narrow local-pause compatibility grace.
- Reject stale native/player callbacks and playback snapshots. Cancel delayed retries when a player is released.
- Remove a synchronous wait in
/playthat could block the HTTP server needed for HLS loading. - Redesign the receiver, navigation, settings, logs, and playback controls for TV: larger text, restrained light/dark themes, clear remote focus, and safe screen margins.
Verification
- 36 JVM tests and 8 executable native callback tests passed.
- Release lint: 0 errors (80 warnings and 1 hint remain).
- Signed release built for ARM64 and ARMv7; signature and 16 KB ZIP alignment verified.
- Installed as an in-place upgrade on NVIDIA Shield. Device package version and APK SHA-256 match this release.
- On-device synthetic AirPlay regression: the previous release lost the paused session after the original control socket closed. This release retained the session and resumed after a 30-second protocol-command pause and a 60-second TV media-key pause. Explicit stop passed after both tests.
- D-pad settings navigation, live theme switching, and persisted theme selection checked on the Shield.
The device regression uses a local, silent H.264 fixture and protocol commands, not a real iPhone sender. Real iPhone interoperability, LAN discovery, encrypted screen mirroring, audio-only playback, and reboot recovery were not retested for this release. GitHub Actions status is separate from the completed local validation above.
Install and source
- APK:
Shield-AirPlay-2.0.0-shield.apk - Package:
no.gior.shieldairplay - Version:
2.0.0-shield(code 200) - Signed with the same certificate as the previous Shield release; supports in-place upgrade.
- Source commit:
4e14bcbe315d23a75553f01f53aec6fd043c7cba - Source archive includes the pinned native dependency trees and
SOURCE_REVISIONS.json. For the documented Git-based build, clone the repository at this release tag with--recurse-submodulesand followSHIELD_BUILD.md. - GPLv3; upstream attribution and license notices retained. No subscriptions, ads, analytics, or paid feature gates.
Verify downloaded assets against SHA256SUMS.
Shield AirPlay 1.1.0
What is new
- Added live, persistent System / Light / Dark app themes.
- Added Shield-remote pause compatibility: paused AirPlay video stays resumable after controls hide.
- Added boot/process-recovery hardening and privacy-safe media URL logging.
- Added public CI, reproducible Docker build documentation, and agent/contributor guidance.
Verified
- 18 unit tests passed.
- Android lint passed.
- APK Signature Scheme v2 and ZIP alignment verified.
- Tested on NVIDIA Shield Android TV with AirPlay video, Screen Mirroring, audio, boot recovery, remote pause/resume, and dark UI.
See SHA256SUMS and BUILD_VERIFICATION.txt for artifact details.
DRM-protected Apple TV content is not supported.