android 13.0 USB连接模式默认设为MTP

2023-12-21

1.概述

在13.0android系统产品开发中,在通过otg连接设备的时候,会弹出usb连接模式这时候会让客户选择当前连接电脑是
哪种模式,在项目开发中,需要以mtp模式,就是可以在电脑查看设备的内部存储的样式来设置otg连接电脑的模式,
接下来分析下相关模式,来具体实现相关功能

2.USB连接模式默认设为MTP的核心类

frameworks/base/services/usb/java/com/android/server/usb/UsbDeviceManager.java

3.USB连接模式默认设为MTP的核心功能实现和分析

UsbManager调用接口,会binder通信到UsbService。而UsbService又有两个实例,一个
UsbHostManager,一个UsbDeviceManager。UsbDeviceManager和
UsbHostManager是一个相对的概念,
UsbHostManager是手机作为一个host,比如键盘、鼠标通过usb连接手机。而UsbDeviceManager是手机与电脑连接
USB的连接方式都是在UsbDeviceManager.java中处理的
在系统中UsbDeviceManager.java是对USB设备管理的核心类,在usb连接以后,弹出对话框来判断当前
usb设备以什么样的形式来连接设备,
路径为:
接下来看下frameworks/base/services/usb/java/com/android/server/usb/UsbDeviceManager.java

     @Override
        public void handle
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android 13.0 USB连接模式默认设为MTP 的相关文章

随机推荐

  • 我该如何解除微软账户儿童模式?

    之前注册微软账户时把日期填成小于14岁的了 现在出现由于你的家庭安全设置 你不能使用 Google Chrome 您可以访问以下网页 https account microsoft com family home lang 首先登陆后点击添
  • 华纳云:ServiceComb如何实现zipkin分布式调用链追踪

    Apache ServiceComb是一个开源的微服务框架 它提供了分布式系统开发所需的一系列工具和服务 在ServiceComb中 实现分布式调用链追踪可以通过整合Zipkin来实现 Zipkin是一个开源的分布式追踪系统 它可以帮助你跟
  • 23年12月AI烟火识别系统应用案例-北京梅兰芳故居防火系统

    AI烟火识别智能视频分析系统在文化遗产保护领域的应用 尤其是在梅兰芳故居防火系统的部署 是现代科技与传统文化保护结合的典范 这篇文章将详细介绍富维烟火识别系统的设计 实施及其在23年12月在北京梅兰芳故居中的应用 背景介绍 nbsp 梅兰芳
  • http通信 axios VS fetch

    基本用法 GET 两者都是基于Promise 所以可以使用 then 也可以使用async await fetch需要手动对相应内容进行转换 axios会根据响应头类型 进行自动转换 所以axios的代码更加简洁 axios get htt
  • netty源码:(28)ChannelPromise

    ChannelPromise是ChannelFuture的子接口 它是可写入的 其父接口Promise定义如下 ChannelPromise有个默认的实现类 DefaultChannelPromise 它的setSuccess方法用来调用所
  • Microsoft Family Safety Microsoft 家庭安全将人员添加到你的家庭组

    在 创建家庭组 后 通过添加家庭成员来浏览 Microsoft 家庭安全 的功能和权益 如果某人已是家庭组成员 则在加入另一个组之前 他们必须 退出该组或从该组中删除 他们还可以 创建一个新的 Microsoft 帐户 以与新的家庭组相关联
  • 大模型ChatGLM简介及应用情景

    本节介绍生成模型GLM系列模型的新成员 中英双语对话模型ChatGLM ChatGLM分为6B和130B 默认使用ChatGLM 6B 两种 主要区别在于其模型参数不同 ChatGLM是一个开源的 支持中英双语问答的对话语言模型 并针对中文
  • WaterBench: Towards Holistic Evaluation of Watermarks for Large Language Models

    本文是LLM系列文章 针对 WaterBench Towards Holistic Evaluation of Watermarks for Large Language Models 的翻译 WaterBench 面向大型语言模型水印的整
  • 【vue】$bus 跨组件调用方法

    1 新建bus js import Vue from vue 使用 Event Bus const bus new Vue export default bus 2 main js引用 import bus from libs bus Vu
  • 什么是DLNA

    DLNA旨在解决个人PC 消费电器 移动设备在内的无线网络和有线网络的互联互通 使得数字媒体和内容服务的无限制的共享和增长成为可能 DLNA的口号是Enjoy your music photos and videos anywhere an
  • LLaVA和LLaVA-Plus视觉指令微调及工具使用构建多模态智能体

    认识和理解视觉内容 以及基于人类指令对视觉世界进行推理 长久以来一直是一个具有挑战性问题 得益于大规模预训练 OpenAI 的 GPT 4V 展示了在自然语言处理任务和复杂视觉理解中令人印象深刻的能力 智源社区邀请到了LLaVA的一作柳昊天
  • 测试开发 | 智能辅助在心理健康治疗中的革新:倾听、理解、支持的新时代

    随着科技的迅速发展 智能辅助技术正在逐渐渗透到心理健康治疗领域 为个体提供更为智能 个性化的支持 这种创新性的结合为心理健康领域带来了新的可能性 使治疗更加灵活 高效 并为患者提供了更全面的关怀 1 虚拟治疗环境 智能辅助技术通过虚拟治疗环
  • 航空港务数据大屏为航空港的可持续发展提供有力支撑!

    随着经济的发展 不断加建与扩建民用机场 空港行业规模不断扩大 在不断引进和消化发达国家先进技术的同时 中国深入开展了对新技术和新材料的研究 极大地丰富和发展了中国的机场建设技术 且各项机场建设计划均已落实推进 行业在经济发展的推动下欣欣向荣
  • 在vue3的setup语法糖中为什么无法直接使用useRouter().currentRoute

    在vue3的setup语法糖中为什么无法直接使用useRouter currentRoute 问题 在setup语法糖中 不能直接使用useRouter xx
  • 测试开发 | 创业与人工智能的密切关系

    随着科技的迅猛发展 人工智能 AI 已经逐渐渗透到各个领域 为创业者带来了前所未有的机遇与挑战 在这个数字化转型的时代 创业与人工智能的密切关系日益凸显 成为推动创新和持续发展的关键因素 1 人工智能为创业提供新的商业模式 人工智能技术的不
  • 在spring boot项目引入mybatis plus后的的案例实践

    前景提要 1 项目背景 一个spring boot mybatis的项目 分页一直是PageHelper 2 为什么要引入mybatis plus 1 简化单表的crud 2 对mybatis plus进行简单的设计 以满足现有系统的规范
  • 龙芯loongarch64服务器编译安装paddlepaddle

    前言 PaddlePaddle Parallel Distributed Deep Learning 中文名飞桨 是百度公司推出的开源 易学习 易使用的分布式深度学习平台 现阶段各行各业均追求国产化 软件行业也一样 所有需要在龙芯服务器上编
  • Python+Pytest接口自动化之测试函数、测试类/测试方法的封装

    前言 在python pytest 接口自动化系列中 我们之前的文章基本都没有将代码进行封装 但实际编写自动化测试脚本中 我们都需要将测试代码进行封装 才能被测试框架识别执行 例如单个接口的请求代码如下 import requests he
  • Amazon Toolkit — CodeWhisperer 使用

    tFragment gt 官网 https aws amazon com cn codewhisperer trk cndc detail 最近学习了亚马逊云科技的 代码工具 感慨颇多 下面是安装 和使用的分享 CodeWhisperer
  • android 13.0 USB连接模式默认设为MTP

    1 概述 在13 0android系统产品开发中 在通过otg连接设备的时候 会弹出usb连接模式这时候会让客户选择当前连接电脑是 哪种模式 在项目开发中 需要以mtp模式 就是可以在电脑查看设备的内部存储的样式来设置otg连接电脑的模式