Skip to content

[Feature Request] Persistent Playback State: Auto-Resume last channel on App Launch/Boot #370

@Walter-Henri

Description

@Walter-Henri

Is your feature request related to a problem? Please describe.
Currently, the user experience is interrupted whenever the app is closed, the Android system kills the background process, or the device (Android TV/Smartphone) is rebooted. The user is forced to manually navigate through the UI (Categories -> Channel List -> Channel) to resume viewing, which is inefficient.

Describe the solution you'd like
I am proposing a State Persistence mechanism that saves the metadata of the currently playing stream to ensure continuity.

  1. Data Persistence: The app should store the "Channel ID", "Stream URL", and "Category Name" in a local database or "SharedPreferences" every time a channel is successfully loaded.
  2. Lifecycle Handling:
  • On App Start: The system should check for a "Last Played" entry.
  • Auto-Execution: If the feature is enabled, the app should bypass the main menu and initiate the player immediately using the stored parameters.
  1. Boot Integration: Specifically for Android TV, the app should ideally have an option to "Launch on Boot" and immediately play the last channel, mimicking the "Instant-On" experience of traditional Cable TV hardware.

Detailed Functional Requirements

  • Connection Handshake: The auto-resume should trigger only after the network state is confirmed as "Connected" to avoid immediate playback errors.
  • Error Handling: If the "Last Channel" fails to load (e.g., dead link or timeout), the app should gracefully fallback to the Home Screen with a brief notification (Toast).
  • User Control (Settings Menu):
    • Resume Last Channel on Startup (Toggle Switch)
    • Startup Delay (Selection: None, 2s, 5s) - To allow system processes/Wi-Fi to stabilize on slow devices.

Why this is important?
This feature is essential for accessibility, particularly for elderly users or those using Android TV boxes who expect a seamless, "plug-and-play" television experience without complex menu navigation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions