mirror of
https://github.com/AntennaPod/AntennaPod.git
synced 2026-08-18 02:53:10 +00:00
### Description Use fixed IDs for home sections. Otherwise view restoration can get confused by non-existing views. Also, sneak in new agent instructions :) ### Checklist <!-- To help us keep the issue tracker clean and work as efficient as possible, please make sure that you have done all of the following. You can tick the boxes below by placing an x inside the brackets like this: [x] --> - [x] I have read the contribution guidelines: https://github.com/AntennaPod/AntennaPod/blob/develop/CONTRIBUTING.md#submit-a-pull-request - [x] I have performed a self-review of my code, going through my changes line by line and carefully considering why this line change is necessary - [x] I have run the automated code checks using `./gradlew checkstyle lint` - [x] My code follows the style guidelines of the AntennaPod project: https://antennapod.org/contribute/develop/app/code-style - [x] I have mentioned the corresponding issue and the relevant keyword (e.g., "Closes: #xy") in the description (see https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) - [x] If it is a core feature, I have added automated tests
:app
The main application module that integrates all features and hosts app-specific UI screens not large enough for their own module.
PodcastApp initializes the app; ClientConfigurator registers service implementations (download, sync) at startup.
The miniplayer (the collapsed player bar at the bottom of the screen) is implemented in ExternalPlayerFragment.
It is hosted in MainActivity as a bottom sheet. MainActivity controls its visibility via setPlayerVisible() based on playback state.
Wear OS Communication (play flavor only)
WearListenerService is a WearableListenerService that handles DataLayer messages from connected watches.
It responds to watch-initiated requests.
The service is kept alive by the Android framework while at least one watch is connected.