![如何防止 Radiotray 在恢复后在锁定屏幕上播放(从缓冲区)](https://linux22.com/image/818795/%E5%A6%82%E4%BD%95%E9%98%B2%E6%AD%A2%20Radiotray%20%E5%9C%A8%E6%81%A2%E5%A4%8D%E5%90%8E%E5%9C%A8%E9%94%81%E5%AE%9A%E5%B1%8F%E5%B9%95%E4%B8%8A%E6%92%AD%E6%94%BE%EF%BC%88%E4%BB%8E%E7%BC%93%E5%86%B2%E5%8C%BA%EF%BC%89.png)
当我恢复笔记本电脑并打开 radiotray 时,当我处于锁定屏幕时,它会再次开始播放(从缓冲区播放)。当我在某个应该安静的地方(图书馆、火车等)时,这真的很烦人。解锁屏幕后,如果能延迟恢复 radiotray 播放,以便能够对我所处的情况做出反应,那就太好了。
我该如何防止这种行为(除了在暂停之前关闭 radiotray 之外)?
答案1
运行 10.04,为了避免这种相当烦人的行为,我整理了下面的脚本并将其保存为/etc/pm/sleep.d/13_radiotray。
(在终端:中gksudo gedit /etc/pm/sleep.d/13_radiotray
,输入/粘贴脚本代码,保存文件,最后使用:使其可执行sudo chmod +x /etc/pm/sleep.d/13_radiotray
。)
如您所见,它的作用是:如果 radiotray 在挂起/休眠状态下运行,它会在恢复/解冻时被终止,然后以“空闲”模式重新启动。这对我和我的需求来说没问题...
(我不知道脚本的编号(13......)是否“OK”,最后的“退出$?”是否必要 - 或者是否有用? - 但至少对我来说它很完美......)
#!/bin/bash
# /etc/pm/sleep.d/13_radiotray
case "$1" in
resume|thaw)
# kill radiotray if it's running...
if pgrep -f /usr/bin/radiotray > /dev/null ; then
pkill -f /usr/bin/radiotray
# ...and then restart radiotray (idle)
# If it doesn't work with 'tty7', try '(:0.0)' or '(:0)'...
DISPLAY=:0.0 su `who | grep 'tty7' | awk '{print $1}'` -c "radiotray > /dev/null &"
fi
;;
esac
exit $?
编辑于 2012-11-03:更改了“DISPLAY=: ...”行(参见下面的注释)/mikwie