android - 在 Chrome 中运行的 Android 应用程序中使用媒体硬件按钮

标签 android google-chrome google-chrome-arc

我已经使用 ARC Welder 在 Chrome 中成功运行了我的应用程序。我想在我的应用程序中使用我的 MacBook 上的播放/暂停按钮。

我的应用程序在 Android 中正常响应媒体按钮,如下所示。它适用于 Google TVAndroid TV。但不适用于 Chrome ARC。

我还响应了空格和输入按钮,它们在 Chrome ARC 上完美运行。

这是我在我的 Activity 中使用的代码:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    switch (keyCode) {
        case KeyEvent.KEYCODE_MEDIA_PLAY:
        case KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE:
        case KeyEvent.KEYCODE_MEDIA_PAUSE:
        case KeyEvent.KEYCODE_SPACE:
        case KeyEvent.KEYCODE_ENTER:
        case KeyEvent.KEYCODE_NUMPAD_ENTER:
        case KeyEvent.KEYCODE_DPAD_CENTER:
            playPause();
            return true;
        case KeyEvent.KEYCODE_MEDIA_STOP:
            sendOrderedBroadcast(BaseNotificationService.STOP_INTENT, null);
            return true;
        default:
            return super.onKeyUp(keyCode, event);
    }
}

您认为如何实现?是否可以?是否有支持播放/暂停按钮的解决方法?

最佳答案

ARC 目前缺少一个完整的映射来将我们通过 Chrome PPAPI 获得的所有键码转换为它们的 Android 等效版本。

没有真正的变通办法——键盘事件不会通过,因为没有翻译。

由于我在调查时追踪到了一些细节,所以我继续提交了 this bug跟踪它。随时为它加注星标。

关于android - 在 Chrome 中运行的 Android 应用程序中使用媒体硬件按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29677668/

相关文章:

android - Chrome ARC 中的谷歌地图

android - activity_main.xml : Failed to find the style corresponding to the id 2130771996

javascript - SpeechSynthesisUtterance 在 Chrome 中因多次调用而崩溃

android - 为什么 GZip 算法的结果在 Android 和 .Net 中不一样?

javascript - 如何让 Chrome 在新标签页中打开多个站点

html - 为什么这个页面在 Chrome 中是紫色的,而在 Firefox 中是蓝色的?

android - 通过 zip 安装 Chrome 扩展程序,需要 Chrome 的 App Runtime : 'import' extension is not installed

android - libhoudini 是否可用于 Chrome 操作系统上的 ARC

android - 为什么 BroadcastReceiver 在使用 MediaPlayer 时会崩溃?

android - 从 Parcelable ArrayList 重新填充列表