Pages

2011年7月25日 星期一

偵測有線耳機的插拔

這個功能也是 UEvent 的應用,繼承 UEventObserver,並且實作 onUEvent callback function,參考這份文件,有挺完整的介紹。不過,有幾點需要注意:##ReadMore##
  • 實作的類別改名為 WiredAccessoryObserver,這代表著,它會偵測不同的有線配件,如:耳機、HDMI。
  • 在 boot complete 之後,先到 /sys 底下去讀取耳機起始狀態,然後,開始監督 DEVPATH 這個子字串。

  原本是叫做 HeadsetObserver,看了 Android 3.1 mr2,發現已經被整合在一起。不過架構是不變的,如果偵測到插拔的動作,就會發 intent 通知 Audio Service。

  之前有發現,系統進入 suspend 之後,再去做插拔的動作,然後 resume,系統並不知道有做這個動作,原因是,kernel module 並沒有實作 resume 的函式,只要補上去就可以啦!
 
Blogger Templates