Android判斷和監(jiān)聽底座狀態(tài)和類型的方法介紹
底座的狀態(tài)跟充電狀態(tài)類似,很多底座提供充電功能(座充).
底座狀態(tài)同樣使用sticky Intent廣播??梢圆樵冊O備是否插入底座,哪種底座。
判斷當前底座狀態(tài)
廣播的Action是ACTION_DOCK_EVENT,sticky Intent不需要注冊真實的接收器
IntentFilter ifilter = new IntentFilter(Intent.ACTION_DOCK_EVENT);
Intent dockStatus = context.registerReceiver(null, ifilter);
//You can extract the current docking status from the EXTRA_DOCK_STATE extra:
//int dockState = battery.getIntExtra(EXTRA_DOCK_STATE, -1);
boolean isDocked = dockState != Intent.EXTRA_DOCK_STATE_UNDOCKED;
判斷插入底座類型
插入底座有四種類型:
桌面
Low-End (Analog) Desk(猜是顯示模擬時鐘)
High-End (Digital) Desk(猜是顯示數字時鐘)
后面兩項是在API11以后引入的,所以,后面三者都判斷是最好的。
boolean isCar = dockState == EXTRA_DOCK_STATE_CAR;
boolean isDesk = dockState == EXTRA_DOCK_STATE_DESK ||
dockState == EXTRA_DOCK_STATE_LE_DESK ||
dockState == EXTRA_DOCK_STATE_HE_DESK;
監(jiān)控充電
ACTION_DOCK_EVENT會在插入、撥出底座時廣播。所以接收這個廣告就可以了
可以用上一步相同的方法讀取插入底座的類型和狀態(tài).
- Android實現監(jiān)聽電話呼叫狀態(tài)的方法
- Android中監(jiān)聽軟鍵盤顯示狀態(tài)實現代碼
- android獲取監(jiān)聽SD Card狀態(tài)的方法
- Android中檢查、監(jiān)聽電量和充電狀態(tài)的方法
- Android中監(jiān)聽判斷網絡連接狀態(tài)的方法
- android音樂播放器監(jiān)聽電話狀態(tài)實現代碼
- android 電話狀態(tài)監(jiān)聽(來電和去電)實現代碼
- Android 后臺發(fā)送郵件示例 (收集應用異常信息+Demo代碼)
- Android開發(fā)中怎樣調用系統Email發(fā)送郵件(多種調用方式)
- Android監(jiān)聽手機電話狀態(tài)與發(fā)送郵件通知來電號碼的方法(基于PhoneStateListene實現)
相關文章
Flutter開發(fā)技巧ListView去除水波紋方法示例
這篇文章主要為大家介紹了Flutter開發(fā)技巧ListView去除水波紋方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12Android開發(fā)之ViewPager實現滑動切換頁面
這篇文章主要為大家詳細介紹了Android開發(fā)之ViewPager實現滑動切換頁面,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-09-09Android編程之桌面小部件AppWidgetProvider用法示例
這篇文章主要介紹了Android編程之桌面小部件AppWidgetProvider用法,結合具體實例形式分析了Android桌面組件AppWidgetProvider的功能、布局、權限設置等相關操作技巧,需要的朋友可以參考下2017-08-08