Develop - BLE, UI generalization, Seekbar, WebDAV, Refactor and AGP upgrades, Native call controls, Notifying app picker, background discovery and more#113
Conversation
…dia session updates
…h settings section
… logic in SyncManager
…onstants for parsing
…sBottomSheet accessed via LastConnectedDeviceCard
Ble - Bluetooth LE communication
…g WebSocket closure
…yling, and improved layout consistency
Web dav file access impl
Handle mediaControl seekTo commands on Android and sync playback position metadata back to macOS. - add seekTo transport control support - include duration, position, timestamp, and buffering in status payloads - update sync logic so seekbar state can reconcile after remote scrubs
Implement Seekbar sync for now playing
…ce starts immediately in onStartCommand #205
…nts when WebSocket is disconnected
…king last known state
…ayload to optimize bandwidth
…ences via DataStore
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces major updates to the AirSync Android app, focusing on adding BLE (Bluetooth Low Energy) connectivity support, updating dependencies and Android SDK versions, and improving network and device discovery features. The most significant changes include the addition of BLE connection management and chunking utilities, new permissions for BLE and local network access, and updates to the build configuration for compatibility with the latest Android and Java versions.
Bluetooth Low Energy (BLE) Support:
BleConnectionManager,BleChunkUtil, andBleConstantsclasses to support BLE communication, chunked data transfer, and protocol constants. This enables the app to advertise, connect, and transfer data over BLE, including handling chunked payloads for BLE's limited MTU size. [1] [2] [3]AirSyncApp, allowing global access and management of BLE connections.Permissions and Manifest Updates:
AndroidManifest.xmlto enable BLE and network discovery features. [1] [2]Build and Dependency Updates:
compileSdkandtargetSdkto 37, increasedminSdkto 30, bumpedversionCodeandversionNameto 29 and 4.0.0, and set Java/Kotlin compatibility to version 21 for improved performance and compatibility. [1] [2]Network and Device Discovery Improvements:
MainActivityto check for local network permission before starting ADB and UDP discovery, ensuring discovery features only run when permitted. Also, discovery is now triggered ononResumefor better reliability. [1] [2]UDPDiscoveryManagerimport for managing UDP-based device discovery.ProGuard Configuration: