解决usb otg线系统重启的问题
硬件环境:板子上有两个usb口,一个是mini usb,用作系统供电,一个是mirco usb,用作调试口,该usb口的电由mini usb提供,且该usb口不能主动给系统供电。
软件逻辑:应用服务检测到系统充电器拔出的时候会关闭系统
问题:在mini口插入充电器的情况下,往mirco usb口插入usb otg设备的时候,系统也会关机
经研究,导致该问题出现的原因,android系统默认硬件只有一个usb口,你把该usb当做otg口用的时候,系统就认为当前不是处于插入充电器状态,所以会把/sys/class/power_supply/ac/online的值清零,导致上报广播ACTION_POWER_DISCONNECTED给系统,最后导致系统关机
解决办法是,更改kernel层插入usb设备时候的检测逻辑。具体分析思路和解决过程及方案如下:
1.首先要大致了解下android的电池管理框架
Android系统中对电池的管理驱动层继承了linux下的power supply class,而在用户层则是在BatteryService.java中通过广播的方式将电池相关的属性上报给上层app使用。这些属性都是在java中声明,在jni中调用更新的。
解决usb otg线系统重启的问题相关推荐
- 安卓系统百变USB OTG之输入外设篇
安卓系统百变USB OTG之输入外设篇 转自:http://www.sina.com.cn 2012年09月29日 09:27 斑马网 近日小米2的开箱照频频曝光,而在小米的随箱"嫁妆 ...
- USB OTG简介、与普通USB线的区别
USB有三类接口A类接口 -----------最常见的扁平接口,四芯 VCC GND D+ D- B类接口 ...
- 如何解决2012年7月1日增加闰秒后引起linux系统重启问题
国际地球自转和参考坐标系统服务(IERS)将在格林威治时间2012年6月30日午夜增加一闰秒(维基百科关于闰秒的说明),由于Linux kernel和Posix关于NTP时间跳变的标准不同,将在201 ...
- 重启计算机设的桌面背景就没了,桌面壁纸无法保存怎么办?Win7系统重启后不保存桌面背景解决方法...
今天一网友咨询小编称自己设置了电脑桌面背景图片,但是电脑重启后不保存桌面背景,又还原至之前的桌面背景,遇到桌面壁纸无法保存怎么办?针对这个问题,装机之家小编分享一下Win7系统重启后不保存桌面背景解决 ...
- Hyper-V 激活Windows系统重启后黑屏的解决方法 + 激活方法
Hyper-V 激活Windows系统重启后黑屏的解决方法 + 激活方法 参考文章: (1)Hyper-V 激活Windows系统重启后黑屏的解决方法 + 激活方法 (2)https://www.cn ...
- ubuntu系统重启后桌面分辨率减小的原因及解决方法
我的情况是:使用命令 nvidia-smi 进行验证,如果出现链接不成功,说明是驱动除了问题: 根据以下教程重新安装后,问题解决了. ubuntu16.04装机1:安装NVIDIA显卡驱动(下载.ru ...
- win7系统如何重启服务器,云骑士解决win7系统重启IIS服务的技巧介绍
大部分电脑爱好者在使用win7企业版系统的时候,会频繁遇见win7系统重启IIS服务的麻烦,比如近日有用户到本站反映说win7系统重启IIS服务的情况,只是却不明白要怎么样操作win7系统重启IIS服 ...
- 解决win7系统重启后ip丢失问题,即每次电脑重启都要重新设置ip地址,重启后ip地址没了
解决win7系统重启后ip丢失问题,即每次电脑重启都要重新设置ip地址,重启后ip地址没了 参考文章: (1)解决win7系统重启后ip丢失问题,即每次电脑重启都要重新设置ip地址,重启后ip地址没了 ...
- otg usb 定位_教你简单认识OTG与OTG线
想必大家应该有经常使用USB数据线,但是另一种数据线OTG大家有没有听过呢?讲真,小编之前对它也不太清楚,最近才学习了与其相关的知识,现在小编就来与大家分享一下, 什么是OTG? OTG是On-The ...
最新文章
- libACE-6.3.3.so: cannot open shared object file: No such file or directory
- 如何在 Python 中开始机器学习?(小白必看)
- nginx php 错误日志,PHP 错误与异常的日志记录
- 【Deep Learning笔记】用Inception-V3模型进行图像分类
- 大疆口袋相机美颜怎么设置_大疆口袋小相机DJI Pocket 2套装版深度评测:变成生产力工具...
- camera(24)---camera 客观测试 Imatest教程--噪声测试
- 业界首款!小米10至尊纪念版将有屏下摄像头版本
- 4399小游戏flash插件怎么下载_Flash即将关闭,但这个小游戏平台,或许可以帮你找回4399的回忆...
- Microsoft Office SharePoint Server 2007 Trial Version已经可以下载了
- 微信小程序 选项卡demo
- python HEIC2jpg 压缩
- 计算机光电与智能专业就业方向,光电信息科学与工程就业方向 可以做什么工作...
- 《科学》:基因编辑婴儿入选年度“科学崩坏”事件
- Replication Failed to register VRMS. Operation ID: bef61197-acf3-46ac-bffd-d457
- C# 模拟PCM数据并创建WAV文件
- 录屏可以录声音吗?录制带声音的视频,这个方法轻松解决
- Redis的ZSET的实现及结合源码的跳跃表结构分析
- 微信刷脸支付设备奖励计算延长一整年!
- 如何删除本地/远程Git分支
- 有效处理Java异常三原则
热门文章
- 为什么说Vue是单页面应用呢?
- 张艾迪Eidyzhang:解码天才Eidyzhang的诞生
- 如何撰写PRD(一)
- 什么是嵌入式视觉?ARM处理器打造嵌入式视觉硬件
- eclipse本来运行的汉字运行出来变成特殊符号或者乱码的解决方法
- corr()函数的用法
- C# 2010 激活码
- ES6新特性总结(2)解构赋值、模板字符串、Symbol
- 红米note8pro微信无法连接服务器,在红米Note8Pro微信浏览网页background-image图片无法加载?...
- JS监听页面元素删除子节点、增加子节点、修改子节点的内容