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
投稿

猜你喜欢

  • JVM类运行机制实现原理解析

    2023-11-01 18:26:20
  • Windows下gradle的安装与配置的超详细教程

    2023-08-27 17:01:50
  • Android多点触控实现图片自由缩放

    2023-12-15 20:48:40
  • Apache和Tomcat有什么区别_动力节点Java学院整理

    2023-08-15 08:49:44
  • Android 使用mediaplayer播放res/raw文件夹中的音乐的实例

    2023-12-19 08:28:11
  • Spring Data JPA调用存储过程实例代码

    2023-11-25 00:13:15
  • shiro之记住登录信息

    2023-03-06 18:39:13
  • Android内核源码 在Ubuntu上下载,编译,安装

    2023-02-21 19:43:39
  • FeignClient如何通过配置变量调用配置文件url

    2023-05-07 08:19:25
  • java isInterrupted()判断线程的实例讲解

    2023-07-21 01:45:53
  • 浅谈Java中注解Annotation的定义、使用、解析

    2021-07-29 04:07:52
  • 浅谈JVM内存溢出原因和解决思路

    2023-11-23 12:24:15
  • 简单说明Java的Struts框架中merge标签的使用方法

    2023-09-17 00:32:26
  • android几种不同对话框的实现方式

    2022-09-13 06:31:42
  • WPF实现平面三角形3D运动效果

    2021-10-25 02:35:02
  • Jexcel实现按一定规则分割excel文件的方法

    2023-06-29 07:52:01
  • Java实现的计时器【秒表】功能示例

    2023-11-10 21:24:50
  • SSM项目使用拦截器实现登录验证功能

    2023-06-17 16:12:38
  • Google Kaptcha 框架实现登录验证码功能(SSM 和 SpringBoot)

    2023-01-14 09:21:38
  • C#利用com操作excel释放进程的解决方法

    2022-08-02 07:01:28
  • asp之家 软件编程 m.aspxhome.com