-
-
Notifications
You must be signed in to change notification settings - Fork 530
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve Android TV home screen recommendations #2515
Improve Android TV home screen recommendations #2515
Conversation
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
Also there probably should be option to make channel empty, considering that it cant be disabled at all on GoogleTV - I will implement it |
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/preference/constant/PreferredDefaultChannelData.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/LeanbackChannelWorker.kt
Fixed
Show resolved
Hide resolved
app/src/main/java/org/jellyfin/androidtv/integration/LeanbackChannelWorker.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/LeanbackChannelWorker.kt
Fixed
Show fixed
Hide fixed
app/src/main/java/org/jellyfin/androidtv/integration/LeanbackChannelWorker.kt
Fixed
Show fixed
Hide fixed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the pull request. There are two major issues that need to be changed before I can start a code review:
-
Remove the "Display backdrop" option
The backdrops are not meant to be used as thumbnails and they are not always in 16:9 aspect ratio. The Android TV launcher warps the image to fit the 16/9 ratio when the backdrop is a different size which looks awful. -
Remove "leanbackPreferredDefaultChannel" option
There can be only one default channel and it's set when the app first starts so changing it is just not possible. Your approach to change the reported values based on the preference is a hack that I don't want to support. This is a bit unfortunate for Google TV users but there's nothing we can do about it.
|
The first channel your app creates becomes its default channel. The default channel automatically appears in the home screen. All other channels you create must be selected and accepted by the user before they can appear in the home screen.
We can requested a cropped backdrop instead through fillHeight and fillWidth? In addition to:
|
We try to use the least amount of parameters possible so we use our local image cache, so not a huge fan of this approach. |
The lack of prefer backdrops option results in ugly letterboxing on gtv devices, and having it results in ugly stretching on atv then. This is a bit problematic situation, both outcomes end up in situation where one part of userbase gets screwed :/ Will remove the feature tomorrow then I guess |
I tried setting up an Google TV emulator so I can test which features are supported to find a good solution but I have not been able to make it work. Even with the stable app installed via Play Store it won't show any of our channels or next up items. |
Weird - the channel shows up for me on google tv emulator created with Android Studio. No next up/continue watching though. Did you add Google Account? Check if you are running apps-only mode under your google account settings. Also, apparently GTV uses channels/recommendations only in specific regions, where "the full google tv experience" is not available (cant find source for this statement, it was in some atv documentation by google). |
I think this might be the issue then because I'm getting the full advertisement experience (Netherlands). |
Yep - https://www.youtube.com/watch?v=O3BhUSEu8gg 8:51 |
Ok so the channels are technically not supported on Google TV. I don't think we should add any specific behavior for that platform in that case because we can't maintain it when Google slowly moves countries over to their advertisement-experience. |
So - both options need to go then, I assume? |
Yup |
All new options were removed |
.toContentValues() | ||
}.let { context.contentResolver.bulkInsert(TvContractCompat.PreviewPrograms.CONTENT_URI, it.toTypedArray()) } | ||
@SuppressLint("RestrictedApi") | ||
private fun createPreviewProgram( |
Check warning
Code scanning / detekt
Prefer splitting up complex methods into smaller, easier to test methods.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Everything is good now. I've made some final small tweaks that you can see in the last commit.
Changes
PR introduces 3 new home screen channels:
Issues
#2513