Skip to content

Releases: mouldybread/DisplayLauncher

v0.3.2

11 Nov 14:34

Choose a tag to compare

Update ci/cd to output signed APKs

Full Changelog: v0.3.1...v0.3.2

Release v0.3.1: Intent Extras Support & Stream Viewer Integration

23 Oct 20:43

Choose a tag to compare

🎯 Major Features

Intent Extras Support

  • Pass custom parameters to apps via extra_string or individual extra_* parameters
  • Enable deep integration with apps like Android Stream Viewer
  • Launch apps with specific configurations (e.g., specific camera selection)
  • Support for both comma-separated format and individual parameters

Stream Viewer Integration

  • Launch Stream Viewer directly to a specific camera
  • Perfect for automated camera switching via Home Assistant
  • Complete ADB-free camera control workflow

✨ Enhancements

  • Enhanced documentation with intent extras examples
  • Complete Home Assistant integration guide with camera automation examples
  • Added foreword explaining the ADB-free ecosystem vision
  • Updated API documentation with intent extras format and usage

📚 Documentation Updates

  • API Reference updated with complete intent extras documentation
  • Home Assistant guide with camera rotation examples
  • Intent format specification (comma-separated and individual parameters)
  • Troubleshooting section for intent-based launches

🔗 ADB-Free Ecosystem

This release is part of a three-app ecosystem designed to eliminate ADB dependency:

💡 Usage Examples

Launch camera app with specific camera:

// Comma-separated format
POST /api/launch-intent
{
"packageName": "com.tpn.streamviewer",
"action": "android.intent.action.MAIN",
"data": "",
"extra_string": "camera_name:FRONTDOOR"
}

// Individual parameter format
{
"packageName": "com.tpn.streamviewer",
"action": "android.intent.action.MAIN",
"extra_camera_name": "FRONTDOOR"
}

Launch YouTube video:

{
"packageName": "com.google.android.youtube",
"action": "android.intent.action.VIEW",
"data": "vnd.youtube://dQw4w9WgXcQ"
}

Launch app with multiple parameters:

{
"packageName": "com.example.app",
"action": "android.intent.action.MAIN",
"extra_string": "mode:fullscreen,theme:dark"
}

📦 Installation

Download app-release.apk from the assets below.

Requirements:

  • Android 7.0+ (API 24+)
  • Device must be set as default launcher
  • Network access for REST API control

🔄 Upgrading

This is a minor update with no breaking changes. Simply install over the existing version.

Display Launcher v0.3 - APK Management Update

18 Oct 15:06

Choose a tag to compare

🎯 What's New

APK Installation via Web UI

  • Upload APK files directly through the web interface
  • Install apps remotely without needing ADB access
  • Automatic cleanup of temporary files after installation

App Uninstall Support

  • Uninstall apps directly from the web interface
  • One-click uninstall button for each installed app
  • Confirmation dialogs appear on device for safety

🔧 Improvements

  • Enhanced web UI with install/uninstall controls for each app
  • More reliable app management using dedicated activities
  • Better error handling for install and uninstall operations
  • Improved compatibility across Android versions

🐛 Bug Fixes

  • Fixed context issues preventing uninstall dialogs from appearing
  • Resolved file cleanup after APK installations

📝 Notes

  • Install and uninstall actions require confirmation on the device screen (Android security requirement)
  • APK upload size limited by device storage
  • Requires REQUEST_INSTALL_PACKAGES and REQUEST_DELETE_PACKAGES permissions

⚠️ Security Note

This release adds APK installation capabilities. Only use on trusted networks as there is no authentication (coming in future release).

Display Launcher v0.2 - Intent Support & Home Assistant Integration

18 Oct 14:07

Choose a tag to compare

Display Launcher v0.2 - Intent Support & Home Assistant Integration

🎯 What's New

This release adds intent-based launching capabilities and comprehensive Home Assistant integration.

✨ New Features

Intent-Based App Launching

  • New API Endpoint: /api/launch-intent for advanced app launching with Android intents
  • Deep Link Support: Open specific YouTube videos, URLs, or app-specific content
  • Intent Actions: Support for VIEW, MAIN, SEARCH, and custom intent actions
  • Data URIs: Pass data to apps (e.g., vnd.youtube://VIDEO_ID for YouTube)

Home Assistant Integration

  • Complete Integration Guide: New HOME_ASSISTANT.md documentation
  • REST Commands: Pre-configured YAML for easy setup
  • Input Selects: Device and app selection helpers
  • Scripts: Ready-to-use launcher scripts for single or multi-device control
  • Automation Examples: 6+ real-world automation examples included

🔧 Improvements

  • GitHub Actions: Fixed CI/CD workflow to only trigger on published releases
  • Better Error Handling: Improved error messages for intent launching
  • Documentation: Extensive API reference and troubleshooting guide

📦 API Changes

New Endpoint: POST /api/launch-intent

Request:

{
  "packageName": "com.google.android.youtube",
  "action": "android.intent.action.VIEW",
  "data": "vnd.youtube://dQw4w9WgXcQ"
}

Response:

{
  "success": true,
  "message": "App launched successfully with intent"
}

🏠 Home Assistant Examples

Open YouTube Video

service: rest_command.launch_app_with_intent
data:
  device_ip: "192.168.1.101"
  package_name: "com.google.android.youtube"
  action: "android.intent.action.VIEW"
  data: "vnd.youtube://{{ youtube_video_id }}"

Launch App on All Displays

service: script.launch_display_app
data:
  device: "All Devices"
  app: "YouTube (com.google.android.youtube.tv)"

📝 Use Cases

  • Digital Signage: Rotate content based on time of day or events
  • Smart Home: Launch apps when motion detected or doors open
  • Entertainment: Auto-start Netflix when "movie mode" activated
  • Live Streams: Open specific YouTube streams on schedule
  • URL Content: Display web content via browser intents

🚀 Upgrade Instructions

  1. Download the latest APK from this release
  2. Install over existing version (settings preserved)
  3. For Home Assistant users: Follow the HOME_ASSISTANT.md guide
  4. Test intent launching with curl or Home Assistant Developer Tools

📚 Documentation

  • Full Home Assistant Guide: See HOME_ASSISTANT.md
  • API Reference: Included in Home Assistant guide
  • Package Name Finder: Use adb shell pm list packages

🐛 Bug Fixes

  • Fixed GitHub Actions workflow triggering twice on release
  • Corrected release asset upload permissions

⚠️ Known Limitations

  • No HTTPS support (local network only)
  • No authentication (use on trusted networks)
  • System apps hidden by default
  • Requires Android 7.0+

Display Launcher v0.1

18 Oct 12:10

Choose a tag to compare

Display Launcher v0.1 Pre-release
Pre-release

Display Launcher v0.1

Initial release of Display Launcher - a headless Android TV launcher with web API control.

Features

  • Web-based API for remote app launching (port 9091)
  • Browser interface for manual control
  • TV remote support with D-pad navigation
  • Triple center-button press to access settings
  • Dark theme optimized for TV displays
  • Persistent background service
  • Support for Android 7.0+

Installation

  1. Download app-debug.apk
  2. Install on your Android TV device
  3. Set as default launcher via ADB: