我无法在我的Roku应用程序中禁用“快进”,“暂停”等遥控器按钮。这是一个非常简单的应用程序,只有一个主场景,它只创建一个播放我们电视频道直播的视频节点。 Roku接受它接受它们要求你在直播期间禁用“快进”等特技播放按钮。文档说这应该使用“onKeyEvent()”函数来处理。如果事件被处理,它“不应该”冒泡并由固件处理。我可以控制日志来证明函数正在触发但是当我将“处理”变为真并返回它时,它似乎没有效果。所有的按钮继续发射并做他们的事情。
我已经使用了他们提供的示例,甚至一直将其简化为无条件地将“处理”变为真。 (除其他外)我尝试将它从视频场景brs文件移动到main(所有内容都已初始化)并移动它但我很难过。按下按钮时会触发,但返回true似乎什么都不做。
应用程序仅启动,创建视频节点并开始播放流。除了发布谷歌分析事件,它不会做任何其他事情。
function onKeyEvent(key as String, press as Boolean) as Boolean
handled = false
if press then
if (key = "back") then
handled = false
else
if (m.warninglabel.visible = false)
m.warninglabel.visible="true"
else
if (key = "OK") then
m.warninglabel.visible="false"
end if
end if
handled = true
end if
end if
return handled
end function
这有什么遗漏吗?如果有人知道如何禁用这些按钮,我将不胜感激。
答案 0 :(得分:1)
您不需要像在问题中提到的那样使用onKeyEvent函数。
只需在视频节点的内容元数据中将“实时”字段值设置为true,如文档中所述 https://sdkdocs.roku.com/display/sdkdoc/Content+Meta-Data
如果将处理您的直播内容的视频控件。
中找到示例视频播放器代码答案 1 :(得分:1)
我想知道你为什么不使用Video节点的“enableTrickPlay”和“enableUI”字段。 请在“UI字段”
下查看:https://sdkdocs.roku.com/display/sdkdoc/Video答案 2 :(得分:0)
您可以尝试在视频节点上设置enableUI和enableTrickPlay字段。此外,如果视频节点具有焦点,它将自动处理某些按键操作。如果它没有聚焦,它将不会自动处理这些按键。未处理的按键将从视频播放器和焦点链中向上冒出。焦点链取决于您的代码。但它应该从上到下看起来像这样。
main.brs MainScene 所有其他组件
答案 3 :(得分:0)
您可以设置自定义组件,以扩展Roku Video 组件并覆盖其 onKeyEvent 功能,如下所示
function onKeyEvent(key as String, press as Boolean) as Boolean
if (press)
if (key = "replay" OR key = "fastforward" OR key = "rewind")
return true
end if
end if
return false
end function