我正在尝试构建一个简单的Telegram bot来启动和停止旧的三星设备作为安全摄像头。
通过ssh一切都很好,所以所涉及的命令已被证明有效。现在将它们移到 QPython 和python-telegram-bot lib。
此外,僵尸程序已经在运行,从设备本身运行。问题是涉及shell调用的命令,因为这个命令(QPython shell使用 root 特权运行):
am start -n com.pas.webcam/.Rolling
这应该会打开IP Webcam应用。 在QPython的脚本或控制台中,如果我这样做:
>>> from subprocess import call
>>> call(['/system/bin/am', 'start', '-n', 'com.pas.webcam/.Rolling'])
......我有错误:
CANNOT LINK EXECUTABLE "app_process": \
cannot locate symbol "jpeg_crop_scanline" referenced by "/system/lib/libskia.so"...
...退出代码-6
根据我的理解,当从QPython shell打开IP网络摄像头应用程序时,库存在问题。我找不到任何类似问题的参考。
有关如何解决此问题的任何想法? 感谢。
答案 0 :(得分:1)
解决方案是:
os.environ['LD_LIBRARY_PATH'] = '/data/data/com.pas.webcam/lib'
这是appdata分区内应用程序的lib路径。我不清楚为什么am
二进制文件如果从QPython启动就无法找到它。
之后:
cmd = call(['/system/bin/am', 'start', '-n', 'com.pas.webcam/.Rolling'])
......终于有效了。