2017-06-13 300 views
0

如果我嘗試播放未插入耳機/耳機的音樂,我想編寫一個python以發出警告。如何檢測它們是否連接?Python腳本如何檢測耳機/耳機是否連接到PC?

+0

通過訂閱正確的系統服務來告訴硬件的變化。你在說什麼操作系統? – ArturFH

+0

我正在使用Linux Mint 18.1 –

+1

歡迎來到Stack Overflow。 請注意,在這裏說'謝謝'的首選方式是通過 提高投票的好問題和有用的答案(一旦你有足夠的聲譽這樣做),並接受任何 問題最有用的答案,你問(這也給你一個小小的提升,以你的聲望 )。 請參閱[關於]頁面,以及[如何在此處提問 ?]和 [當有人回答我的 問題時,我該怎麼辦? ?](http://stackoverflow.com/help/someone-answers) –

回答

1

現代Linux系統使用dbus消息系統在應用程序之間進行通信。您可以操縱現有的對象(意思是:其他正在運行的軟件),或者您可以聽一些告訴系統變化的信號(屏幕鎖定,USB驅動程序插入,耳機插入等)。根據系統組件提供的界面(準確地說:主要由您的桌面管理器組件提供),您還可以詢問當前狀態。您可以使用dbus-python庫與python中的dbus進行通信。這是軟件開發的一部分。

你需要找到的是問題的答案:如何讓桌面管理員使用dbus瞭解連接的外設(如耳機)的狀態。有一個機會記錄在freedesktop網站的某處。他們的目標是標準化組件之間相互溝通的方式。所以,你的解決方案很可能是獨立於桌面管理器的。但是,如果您決定在某個論壇上提出此問題,請不要忘記提及您的桌面管理器(kde,gnome等)。順便說一句,我不確定這樣的問題將在這裏討論堆棧溢出,但Ask Ubuntu應該沒問題。

+0

感謝您的幫助! –