gpt4 book ai didi

javascript - 三星智能电视应用程序和 Brightcove 示例应用程序远程控制问题

转载 作者:行者123 更新时间:2023-11-30 13:14:45 25 4
gpt4 key购买 nike

我遇到了 Bightcove (https://github.com/BrightcoveOS/Samsung-Smart-TV-Sample-App) 为三星智能电视提供的示例应用程序的问题。 Remote 不适用于最新 (2012) 型号。这似乎是一个已知的错误 (https://github.com/BrightcoveOS/Samsung-Smart-TV-Sample-App/issues/3),并且在 github 和 brightcove 的支持论坛中都有报道。不幸的是,他们停止维护源代码并且没有人回复这个问题。

在 2010/2011 型号上一切正常。

我认为问题出在 enginelite.keyhandler.js 的某处:

/**
*
* Simple TV App Engine KeyHandler
*
* author: A Different Engine LLC.
* http://adifferentengine.com
* contact@adifferentengine.com
*
*/
// This is pretty straightforward.
TVEngine.KeyHandler = {

keyActions: {
KEY_UP: 'onUp',
KEY_DOWN: 'onDown',
KEY_LEFT: 'onLeft',
KEY_RIGHT: 'onRight',
KEY_ENTER: 'onSelect',
KEY_RETURN: 'onReturn',
KEY_STOP: 'onStop',
KEY_FF: 'onFF',
KEY_RW: 'onRew',
KEY_PLAY: 'onPlay',
KEY_PAUSE: 'onPause',
KEY_YELLOW: 'onYellow',
KEY_RED: 'onRed',
KEY_BLUE: 'onBlue',
KEY_GREEN: 'onGreen',
KEY_EXIT: 'onExit',
KEY_MENU: 'onMenu',
KEY_BACK: 'onReturn',
KEY_SKIPFFORWARD: 'onSkipForward',
KEY_SKIPBACK: 'onSkipBack',
},
enabled: true,
keyMap: {},

init: function() {
// Maps system key list to ours
$KEYS = TVEngine.getPlatform().keys();
// Transforming Samsung keymap into something we like slightly better.
for(key in $KEYS) {
this.keyMap[$KEYS[key]] = key;
}
this._initializeKeyHandler();
},
_cleared: true,
_initializeKeyHandler: function() {
var _this = this; var clear;
$(document).bind("keydown", function(event) {
var action = _this.keyActions[_this.keyMap[event.keyCode]];
// $log("<<< GOT KEY ACTION: "+action+">>>");
if ( action && _this.enabled ) _this.trigger("keyhandler:"+action);
return false;
});
$(document).bind("keyup", function(event) {
var action = _this.keyActions[_this.keyMap[event.keyCode]]+"Release";
// $log("<<< GOT KEY ACTION: "+action+" >>>");
if ( action ) _this.trigger("keyhandler:"+action);
return false;
})
},

enable: function(){
this.enabled = true;
},
disable: function() {
this.enabled = false;
}
};
// Now we can subscribe to the keyhandler from anywhere.
_.extend(TVEngine.KeyHandler, Backbone.Events);

有人能解决这个问题吗?

干杯

最佳答案

需要重写enginelite.platforms.js文件中的_keys对象:

this._keys = {
KEY_RETURN: 88, //36, //8
KEY_UP: 29460, //38,
KEY_DOWN: 29461, //40,
KEY_LEFT: 4, //37,
KEY_RIGHT: 5, //39,
KEY_ENTER: 29443, //13,
KEY_RED: 108, //65,
KEY_GREEN: 20, //66,
KEY_YELLOW: 21, //67,
KEY_BLUE: 22, //68,
KEY_BACK: 8, //I don't know what button on remote it is :)
KEY_PLAY: 71, //80,
}

而且它将适用于三星的所有平台。

由于我的回答为您提供了直接的解决方案,@brimil01 解决方案为您提供了调试问题的方法。

关于javascript - 三星智能电视应用程序和 Brightcove 示例应用程序远程控制问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12421379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com