You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add immichframe://open deep link so the app can be opened by URL - #67
Since a recent Play Store update, Android TV's remote protocol (what Home Assistant's Android TV Remote integration uses) rejects market://launch?id=... links, so it can no longer open apps by package name. Custom-scheme links still work (for example vnd.youtube:// opens SmartTube), but ImmichFrame has no VIEW intent-filter, so there is no way to open it remotely without ADB.
This adds:
an immichframe://open VIEW intent-filter on MainActivity
launchMode="singleTask" on MainActivity, so opening the link while the frame is already running brings the existing instance forward instead of starting a second copy (and a second RPC server) on top. The wake alarm already starts MainActivity with FLAG_ACTIVITY_REORDER_TO_FRONT, and onResume already re-checks the schedule, so no onNewIntent handling was needed.
a short README note on launching it from Home Assistant
Tested on a Google TV Streamer (Google TV 14), using a debug build installed next to the Play Store app:
adb shell am start -a android.intent.action.VIEW -d immichframe://open opened MainActivity.
Sending it again while it was running reported "intent has been delivered to currently running top-most instance", and dumpsys activity activities showed a single MainActivity instance.
Home Assistant remote.turn_on with activity: immichframe://open on the Android TV Remote entity returned 200 and opened the app on the TV, with the Play Store build force-stopped first.
One side effect of singleTask: opening the link while a settings screen is on top closes it and goes back to the frame.
Summary by CodeRabbit
New Features
Open ImmichFrame Android directly with the immichframe://open link. If the app is already running, the link brings it to the foreground.
Launch the app using this link from Home Assistant’s Android TV Remote integration or from a computer with ADB.
Documentation
Added instructions and examples for using the link.
No actionable comments were generated in the recent review. 🎉
ℹ️ Recent review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Advanced
Run ID: 3f4a8140-72b9-4fb2-ba42-4be2a023fef1
📥 Commits
Reviewing files that changed from the base of the PR and between 3dcf08d and c9e72fb.
📒 Files selected for processing: 2
README.md
app/src/main/AndroidManifest.xml
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.
📝 Walkthrough
MainActivity now accepts the immichframe://open link and uses singleTask launch mode. The README documents how to launch the app with the link from Home Assistant or ADB.
Changes: Android deep-link launch
Layer / File(s)
Summary
Configure and document the launch link app/src/main/AndroidManifest.xml, README.md
MainActivity uses singleTask launch mode and handles browsable VIEW intents for immichframe://open. The README shows launch examples for Home Assistant and ADB.
The documented custom link is intended to open ImmichFrame and bring its existing task forward; supplied checks report that behavior working, with no actionable merge risk evident.
Pre-merge checks: 5
Check name
Status
Explanation
Description Check
Check skipped - CodeRabbit’s high-level summary is enabled.
Title check
The title clearly and concisely describes the main change: adding the immichframe://open deep link for opening the app by URL.
Docstring Coverage
No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage
Explanation
No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (2 skipped: 2 unsupported.)
✨ Finishing Touches
🧪 Generate unit tests (beta)
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
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
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.
Since a recent Play Store update, Android TV's remote protocol (what Home Assistant's Android TV Remote integration uses) rejects
market://launch?id=...links, so it can no longer open apps by package name. Custom-scheme links still work (for examplevnd.youtube://opens SmartTube), but ImmichFrame has no VIEW intent-filter, so there is no way to open it remotely without ADB.This adds:
immichframe://openVIEW intent-filter on MainActivitylaunchMode="singleTask"on MainActivity, so opening the link while the frame is already running brings the existing instance forward instead of starting a second copy (and a second RPC server) on top. The wake alarm already starts MainActivity withFLAG_ACTIVITY_REORDER_TO_FRONT, andonResumealready re-checks the schedule, so noonNewIntenthandling was needed.Tested on a Google TV Streamer (Google TV 14), using a debug build installed next to the Play Store app:
adb shell am start -a android.intent.action.VIEW -d immichframe://openopened MainActivity.dumpsys activity activitiesshowed a single MainActivity instance.remote.turn_onwithactivity: immichframe://openon the Android TV Remote entity returned 200 and opened the app on the TV, with the Play Store build force-stopped first.One side effect of singleTask: opening the link while a settings screen is on top closes it and goes back to the frame.
Summary by CodeRabbit
immichframe://openlink. If the app is already running, the link brings it to the foreground.