gpt4 book ai didi

android - 在 Android 应用程序中使用 libCEC + USB 加密狗

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:14:30 32 4
gpt4 key购买 nike

我的目标是从在配备 Pulse-Eight 的 USB 加密狗的 Android 盒子上运行的标准(即非系统)应用程序发送 HDMI CEC 命令。

正在关注 these instructions我成功地编译了 libcec对于 Android 并在盒子上以 root 身份执行它,使用以下命令:

echo <my-cec-command> | cec-client -s /dev/ttyACM0

其中/dev/ttyACM0是系统在插入加密狗时创建的设备文件。

但是,此文件的权限阻止非根用户执行命令(因此无法从我的 Android 应用程序执行)。

另一方面,应用程序实际上可以通过 USB Host API 访问 USB 加密狗Android SDK(前提是用户授予权限),甚至可以用 UsbSerial 包装到 USB 串行 Controller 中图书馆。

但我看不出有什么方法可以在 Android 的 USB 主机 API 和 libcec/cec-client 提供的连接之间架起桥梁。您有什么想法或建议吗?

最佳答案

到目前为止,我找到的最佳解决方案是使用 USB Host API + UsbSerial library使用纯 Java 代码(无嵌入式 libCEC)在适配器的串行端口上读取/写入 CEC 数据包。

我对 libCEC 做了一些逆向工程找出用于基本操作(例如打开和关闭电视以及设置 Activity 信号源)的适当命令。

我最终想出了以下 UsbCecConnection java 类:https://gist.github.com/sdabet/ac4d7711d1a529806cb7b695530b1fac

关于android - 在 Android 应用程序中使用 libCEC + USB 加密狗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45639210/

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