电视遥控器空间导航

时间:2019-06-28 19:11:45

标签: android tizen android-tv television webos

我正在开发一个React库,该库将由SmartTV的Web应用程序使用,我们的目标是使它能够在不同的电视平台(webOS,Android)上通用。

用例: 我们希望使用户能够使用遥控器按钮在屏幕上的不同项目上导航。 从研究看来,每个电视平台都有自己的按钮代码(当按下遥控器上的按钮时生成的代码)。我想弄清楚,

  1. 电视控件中的箭头按钮是如何处理的,电视平台(全部?还是某些平台?)会负责将焦点从按钮更改为按钮

    • 我试图在电视上了解箭头键的工作原理?

    • 当我们按下箭头键时,框架是否会处理将焦点移至下一个可聚焦项(例如,将按钮移至下一个按钮)

  2. 如果不是,那么spatial navigation的最佳方法是什么?

    • 有可用的库吗?

    • 是否有示例代码可以查看Netflix,Spotify等电视应用如何或所有这些服务为不同的电视平台开发不同的应用?

1 个答案:

答案 0 :(得分:1)

我们还制作了一个支持iOS,Android和Tizen的应用程序。 对于iOS和Android,我们使用react-native。 Android和iOS的本机焦点引擎都做得很好。任何自定义更改都可以在本机级别进行。 由于我们的Tizen应用程序是基于Web的,因此没有导航,因此我们重用了react-native代码,但是我们将所有Touchable实例替换为基于https://www.npmjs.com/package/react-js-spatial-navigation的自定义空间导航包(使用Babel别名)。 react-native包导入已替换为react-native-web。查看有关如何执行此操作的“项目”。 结果,这三个平台上都有100%的代码共享。在iOS和Android上使用TouchableOpacity / TouchableHighlight,在Tizen上使用我们的自定义库进行替换。 我的意图是不久就进行一个项目来证明这一点。