我的活动中存在KeyCodes问题,导致创建WebView&加载URL。我注意到当我按下键盘上的键或IR遥控器上的按钮时,它不会调用WebView中的onKeyDown()方法。我猜测它会直接调用基础JavaScript(只要传递正确的密钥代码就可以了)
我遇到的问题是我的IR遥控器上的一些按键只是传递为0(如指南,信息,彩色按钮,它们都用于播放相关选项)。但是,某些键可以正常工作(例如数字按钮)。知道keyCodes被劫持的任何想法吗?我检查了EventHub& InputDispatcher,他们似乎有正确的代码。我是否需要检查chromium / android_webview代码库中的某个位置?这是我正在使用的片段:
private class myWV extends WebView
{
public myWV(Context context)
{
super(context);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
Log.e("myWV", "onKeyDown: " +keyCode);
return super.onKeyDown(keyCode, event);
}
}
@Override
public void onCreate(Bundle icicle)
{
Log.d(TAG, "onCreate");
Toast.makeText(getApplicationContext(), "Please wait while we look for available TV channels...", Toast.LENGTH_LONG).show();
super.onCreate(icicle);
mWebView = new myWV(this);
mWebView.setWebViewClient(new WebViewClient());
mWebView.setWebChromeClient(new WebChromeClient());
Log.e(TAG, "onCreate: Calling setJavaScriptEnabled");
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl(mURL);
// Enable the view
setContentView(mWebView);
}
非常感谢任何提示
答案 0 :(得分:0)
在Chromium中找到处理关键事件的代码段。刚刚在那里添加了我的特殊键。它现在就像一个魅力