Skip to content

Develop - #182

Merged
sameerasw merged 4 commits into
mainfrom
develop
Feb 18, 2026
Merged

Develop#182
sameerasw merged 4 commits into
mainfrom
develop

Conversation

@sameerasw

Copy link
Copy Markdown
Owner

This pull request introduces several key improvements to trial management, device identification, and network discovery in the app. The most significant updates include enhanced device identification logic, a new data integrity check for trial activations, expanded device metadata reporting, and smarter UDP discovery triggers. Additionally, there are updates to Plus entitlement logic and a version rollback in the appcast.

Trial management and device identification:

  • Added new HardwareInfo utility to retrieve hardware UUID, device name, model, and OS version, and updated device identifier logic in TrialManager to prioritize hardware UUID for more stable identification, with multiple fallbacks. [1] [2]
  • Implemented a data integrity check in TrialManager that verifies a hash of the trial state (expiry, device ID, secret) and clears the trial if tampering is detected; hash is updated on activation and validated at startup. [1] [2] [3] [4]
  • Expanded the trial activation payload to include device name, model, and OS version for improved backend validation. [1] [2]

UDP discovery and networking:

  • Enhanced UDPDiscoveryManager to automatically trigger broadcast bursts on system wake and network changes using NWPathMonitor and system notifications, improving device discovery reliability. Also, moved UDP discovery startup to app launch for global management. [1] [2] [3]

Plus entitlement and license logic:

  • Updated Plus entitlement logic to ensure isPlus is only set to false if the trial is not active, and to set isPlus to true if license validation succeeded today. [1] [2] [3] [4]

Other:

  • Rolled back the appcast version from 2.5.0 to 2.3.0, updating the release metadata and download URL.

Mudit200408 and others added 4 commits February 7, 2026 15:28
Changes:
- Implemented "Smart Triggers" to broadcast a burst of packets immediately on App Launch, System Wake, and Network Change.
- Moved UDP discovery from `ScannerView` to the global app lifecycle to ensure continuous background operation.
- Added `broadcastBurst()` to send rapid packet sequences for reliable delivery to passive listeners.
This ensures the Android app can instantly discover the Mac without keeping its own broadcaster active, significantly reducing mobile battery drain.

Ref: Logic is inspired by KDE Connect.
Note: The implementation was more than partially vibe coded (with antigravity) but in my testing it works!!
feat: Smart auto-connect with "Active Burst, Passive Listen" [2/2]
@sameerasw sameerasw self-assigned this Feb 18, 2026
@sameerasw sameerasw added the enhancement New feature or request label Feb 18, 2026
@sameerasw
sameerasw merged commit 1430941 into main Feb 18, 2026
1 check passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in AirSync Features and Bugs Feb 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants