我的目标是从配备Pulse-Eight的USB加密狗的Android盒子上运行的标准(即非系统)应用发送HDMI CEC命令。在Android应用中使用libCEC + USB加密狗
继these instructions我成功地设法编译libcec Android和执行它的根在包装盒上,使用此命令:
echo <my-cec-command> | cec-client -s /dev/ttyACM0
其中/dev/ttyACM0
是堵塞加密狗时由系统创建的设备文件。
但是,此文件的权限阻止命令被非root用户执行(因此无法从我的Android应用程序执行)。
另一方面,应用程序可以通过Android SDK的USB Host API实际访问USB加密狗(只要用户授予权限),甚至可以用UsbSerial库封装到USB串行控制器中。
但我没有看到任何方式使Android的USB Host API和libcec/cec-client提供的连接之间建立桥梁。你有什么想法或建议吗?
我试过这种方法,但是当我试图通过usbManager.getDeviceList列出所有USB设备()返回没有任何设备。任何想法为什么?我用我的方法做了一篇文章,但仍然没有成功(https://stackoverflow.com/questions/45639210/use-libcec-usb-dongle-in-android-app)。预先感谢任何指导。 –