Skip to content

Develop - Bonjour! , seekbar improvements, efficiency improvements#121

Merged
sameerasw merged 11 commits into
mainfrom
develop
Jun 10, 2026
Merged

Develop - Bonjour! , seekbar improvements, efficiency improvements#121
sameerasw merged 11 commits into
mainfrom
develop

Conversation

@sameerasw

Copy link
Copy Markdown
Owner

This pull request introduces several improvements to device connection management, discovery, and UI clarity in the AirSync app. The main changes enhance how device details are handled during connections, improve the reliability of device discovery, and add visual cues for device discovery sources. Additionally, the foreground service handling is updated for better compatibility with newer Android versions.

Device Connection and State Management:

  • The connect function in AirSyncMainScreen.kt now explicitly accepts ipAddress, port, and symmetricKey parameters, allowing more precise control over connection attempts and ensuring the correct credentials are used when connecting to devices. [1] [2] [3] [4]
  • When connecting to a device, the symmetric key is now retrieved and passed explicitly, improving security and reliability of connections. [1] [2]
  • The AirSyncViewModel initialization and connection status listener logic are enhanced to more accurately reflect the current connection state, update the last connected device, and persist the active IP address. [1] [2]

Device Discovery Improvements:

  • Device discovery now uses the DiscoveryOrchestrator instead of the legacy UDPDiscoveryManager, enabling support for multiple discovery protocols and more robust device detection. [1] [2]
  • The UI now visually distinguishes devices found via mDNS or UDP by adding a labeled badge next to each device, improving user understanding of discovery methods. [1] [2]

Foreground Service and Notification Updates:

  • Foreground service management in QuickShareService is updated to use ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE on Android Q and above, ensuring compliance with newer Android requirements and preventing background execution issues. [1] [2] [3] [4]

Context Management and Miscellaneous:

  • The power save receiver is now registered on the application context to avoid leaking the Activity context, improving stability.
  • Minor code organization improvements, including import cleanups and code clarity enhancements. [1] [2]

These changes collectively improve connection reliability, discovery robustness, and user experience in the AirSync application.

Mudit200408 and others added 11 commits May 29, 2026 12:26
…gress updates

- Implement `hasSignificantMediaChange()` to perform deep metadata comparisons (playback state, title, artist, album art, buffering state, like status, and track duration).
- Ignore minor progress elapsed time ticks during comparison to eliminate the CPU-intensive, every-second WebSocket synchronization loop.
- Significantly reduce battery consumption, CPU overhead, and WebSocket network payloads on the Android client.
perf(android): optimize seekbar sync and filter out trivial media progress updates
@sameerasw sameerasw self-assigned this Jun 10, 2026
@sameerasw sameerasw added the enhancement New feature or request label Jun 10, 2026
@sameerasw sameerasw merged commit 5798340 into main Jun 10, 2026
1 check passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in AirSync Features and Bugs Jun 10, 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