Bluetooth
為什麼藍牙代理卡在授權上?
我正在嘗試手動連接我的筆記型電腦和手機。我已經安裝了
bluez-utils
版本4.98-2ubuntu7
。當我在終端上執行代理時,我得到:asheesh@U32U:~$ sudo bluetooth-agent 4835 Pincode request for device /org/bluez/980/hci0/dev<id> Authorizing request for /org/bluez/980/hci0/dev<id>
當我嘗試從手機配對時,會列印密碼請求行。在提示輸入密碼後,設備獲得授權。我現在可以通過手機將文件發送到筆記型電腦。但是,在授權請求後應用程序卡住了,並且控制權沒有傳遞回終端。
為什麼會這樣?如何重新獲得控制權?
這似乎與我在網際網路上看到的範例相反,在這些範例中,終端在授權執行進一步命令後變得可用。
我意識到在後台執行它是一種可能的解決方案,但由於一旦配對完成我需要執行某些其他任務,我更願意讓它在前台執行。我嘗試使用這個:
bluetooth-agent "$PIN" 1> ./bluelog #Background run tested also
但是,該程序在完成(或被殺死)之前不會將其輸出寫入文件,因此我無法在
bluelog
. 有沒有辦法強制程序在完成之前寫入輸出?
這只是解決問題的方法。歡迎任何有關如何解決實際
bluetooth-agent
停滯問題的建議。我曾經在後台執行時
stdbuf
禁用行緩衝。這會實時更新日誌文件,從而讓我檢查並觸發需要完成的其餘活動。STDOUT``bluetooth-agent
stdbuf -o 0 bluetooth-agent "$PIN" 1> ./bluelog &