While mainly focused on Android TV App UI, this talk also covers remote control “Intuitive focus movement” and “a befitting snappy scrolling”. These have a direct effect on visibility and ease of use and therefore have a great effect on an app’s UI. Up until now, the Leanback library automatically covered these points, but at the cost of the complexity of Imperative UI management style and the learning curve of a more independent design pattern. Since Compose for TV became stable in 2024 it has become possible for TV apps to resolve these issues as they now too can benefit from the features of Declarative UI. On the other hand, Compose for TV is not generally exposing “Focus scroll according to user expectations.” concepts to developers as much as Leanback. In addition, implementing without understanding how that kind of design works (even with a well designed API) can result in an app that doesn't function as desired. In light of that fact, in order to build truly intuitive designs it’s necessary to deeply understand the focus scroll design used inside compose. The distinctive part here is that externally mobile oriented composable code is being used while under the hood TV oriented logic is actually being used to make the TV interface operate. For example, scrolling obeys focus movement and allows Modifier.vertical scroll to be used but LazyColumn’s userScrollEnabled parameter does not function. Modifier.verticalScroll doesn’t just function in scrolling but also has important side effects on the way focus development behaves. The characteristic behavior of Compose for TV will be introduced in the following steps: ・Compose for TV’s internal logic for focus movement and scroll ・Concepts and structure of custom behavior ・Concrete examples of behavior controls necessary for achieving a natural feeling UI With this, developers can make TV Apps using Compose for TV without hesitation and aim for greatly reduced debug time. (Translated by the DroidKaigi Committee)
taked137 Android Developer at AbemaTV, Inc
- Developers with experience with Jetpack Compose for mobile and want to know the difference between mobile and Compose for TV. - Those with basic knowledge about Jetpack Compose and want to experience transitioning from Leanback to Compose for TV. - Those working with Compose for TV who want to learn about Focus control handling.
Beyond Mobile: Building Android Auto and Android TV Applications with React Native
Aashima Wadhwa
#Cross-platform Development
Gen AI for Android Developers
Sa-ryong Kang
#Development Tools and Services
No More Getting Lost! A Practical Guide to Writing Jetpack Compose
b4tchkn
#Jetpack Compose