我已经构建了一个使用外部 USB 摄像头的 Android 应用程序。相机图像全屏显示,应用程序截取屏幕截图,并将它们存储在本地文件系统中。连接 USB 摄像头后,它会创建并流式传输到以下文件夹;
/dev/video0
每次断开相机连接时,该文件夹都会被销毁。
这个问题是我的应用程序没有从这个文件夹中读取的权限。所以每次连接相机时我都必须设置权限。
我试图让应用程序自动设置权限,使用以下代码;
Process sh = Runtime.getRuntime().exec(new String[]{"su", "-c", "system/bin/sh"});
sh = Runtime.getRuntime().exec(new String[]{"chmod", "666", "/dev/video0"});
sh.waitFor();
...它要求用户授予超级用户权限,并给我反馈,告诉我用户现在是 root - 但我可以通过终端看到文件夹的权限没有更改。
任何帮助将不胜感激