Android判断和监听底座状态和类型的方法介绍
作者:junjie 时间:2022-03-27 09:33:30
底座的状态跟充电状态类似,很多底座提供充电功能(座充).
底座状态同样使用sticky Intent广播。可以查询设备是否插入底座,哪种底座。
判断当前底座状态
广播的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;
监控充电
ACTION_DOCK_EVENT会在插入、拨出底座时广播。所以接收这个广告就可以了
<action android:name="android.intent.action.ACTION_DOCK_EVENT"/>
可以用上一步相同的方法读取插入底座的类型和状态.
标签:Android,底座
0
投稿
猜你喜欢
程序员最喜欢的ThreadLocal使用姿势
2022-10-22 21:14:55
Android 新闻界面模拟ListView和ViewPager的应用
2022-09-19 09:41:46
C#关键字async/await用法
2022-04-19 03:38:13
Android中获得正在运行的程序和系统服务的方法
2023-01-19 21:05:42
Android中实现下载和解压zip文件功能代码分享
2022-05-31 04:47:26
教你怎么用Java数组和链表实现栈
2023-10-29 08:13:57
java网络编程基础知识介绍
2023-01-10 20:37:44
简单学习Java抽象类要点及实例
2021-10-11 09:08:12
Android运行时权限终极方案(PermissionX)
2022-09-10 06:08:02
Flutter中http请求抓包的完美解决方案
2023-08-22 18:47:47
mybatis 查询返回Map<String,Object>类型
2023-11-14 07:06:09
Android Jetpack架构组件Lifecycle详解
2023-03-04 22:21:01
C# FileStream实现多线程断点续传
2022-06-19 06:50:56
springboot集成mybatisplus的方法
2022-08-02 16:35:12
详解Android的四大应用程序组件
2023-05-23 02:00:32
Spark网站日志过滤分析实例讲解
2021-06-08 12:59:24
Unity3D开发实战之五子棋游戏
2023-06-01 12:25:56
C#实现Datatable排序的方法
2022-12-30 11:31:52
Android实现动态添加数据与堆叠折线图详解流程
2021-09-27 17:50:49
Android 仿淘宝、京东商品详情页向上拖动查看图文详情控件DEMO详解
2022-01-17 12:21:18