在 Android 中使用通过 OTG 线连接的 USB 播放视频?

2023-11-30

我想问是否有可用的应用程序,用户可以通过 OTG 电缆设备将 USB 连接到 Android 并播放其中包含的媒体(特别是视频)。

我制作了一个广播接收器来检测连接的 USB,我也想读取内容。我正在使用这个代码片段。

                    private final BroadcastReceiver mUsbReceiver = new BroadcastReceiver() {

                            public void onReceive(Context context, Intent intent) {
                                String action = intent.getAction();
                                if (UsbManager.ACTION_USB_DEVICE_DETACHED.equals(action)) {
                                    synchronized (this) {
                                        UsbDevice device = (UsbDevice)intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);

                                        if(device != null){
                                              //                        
                                            Log.d("1","DEATTCHED-" + device);
                                          }
                                    }
                                }
                    //
                                if (UsbManager.ACTION_USB_DEVICE_ATTACHED.equals(action)) {
                                    synchronized (this) {
                                        UsbDevice device = (UsbDevice)intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);
                                        if (intent.getBooleanExtra(UsbManager.EXTRA_PERMISSION_GRANTED, false)) {

                                            if(device != null){
                                              //

                                                Log.d("1","ATTACHED-" + device);
                                           }
                                        } 
                                        else {
                                            PendingIntent mPermissionIntent;
                                            mPermissionIntent = PendingIntent.getBroadcast(MainActivity.this, 0, new Intent(ACTION_USB_PERMISSION), PendingIntent.FLAG_ONE_SHOT);                       
                                            mUsbManager.requestPermission(device, mPermissionIntent);

                                        }                   

                                    }
                                }
                    //
                                if (ACTION_USB_PERMISSION.equals(action)) {
                                    synchronized (this) {
                                        UsbDevice device = (UsbDevice)intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);
                                        if (intent.getBooleanExtra(UsbManager.EXTRA_PERMISSION_GRANTED, false)) {

                                            if(device != null){
                                              //

                                                Log.d("1","PERMISSION-" + device);
                                           }
                                        }                   
                                    }
                                }           
                            }
                        };  

我想做这样的申请。

有人对此有什么想法吗?


经过多天的研究我找到了解决方案

https://github.com/1hakr/AnExplorer

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

在 Android 中使用通过 OTG 线连接的 USB 播放视频? 的相关文章

  • 从 TimerTask 的 run 方法更新 TextView 时出错

    我正在尝试测试 UI 和 Timer 类的可能性 所以我尝试了以下练习 TestTimerActivity java package com tvt TestTimer import android app Activity import
  • 进度条中形状的填充

    我正在使用 xml 文件来定义进度条 我在背景形状上定义了填充 但这个设置有时会正确显示 有时则不能 因此 如果我启动内部带有进度条的应用程序或活动 则会正确显示带有背景和 填充 进度的进度条 然后我关闭我的应用程序并再次启动它 并且 进度
  • Android应用程序中菜单的共享功能

    我问了很多关于我的标题的问题 但到目前为止我还没有得到正确的答案 我需要在我的应用程序中实现androd的菜单功能 即当我们进入Android手机中的画廊时 当我们按菜单时 它会提供很多选项像分享 等 我的问题是我可以在我的应用程序中实现相
  • 如何处理 Jetpack Compose 中的导航?

    在 Jetpack Compose 中 导航应该如何完成 所有 并不多 示例 包括来自 Google 的官方示例 都使用密封类并加载新屏幕以响应观察当前屏幕的变化 这确实 有点 有效 但不提供导航返回堆栈 并且手机的后退按钮完全不知道 只是
  • 调用了 BroadcastReceiver 但未调用 PhoneStateListener

    在调试下面的代码时 BroadcastReceiverCustom 正在被 已调用 但 PhoneStateListenerCustom 未调用 现在我只在 BroadcastReceiverCustom 中执行所需的操作 但可能不是最好的
  • 将分页库从 3.0.0-alpha10 更新到 3.0.0-alpha12 时出现运行时错误

    我使用 paging 3 0 0 alpha10 创建了我的 pagingSource 类并且它有效 但是当我将版本更改为 3 0 0 alpha12 时 我收到这个错误 这是运行时异常 java lang AbstractMethodEr
  • android中viewpager中的多个视频播放器

    我想在 viewpager 中的不同片段上播放视频 我为每个片段使用多个媒体播放器和表面视图 当我向左或向右滑动时 我也想暂停和开始视频 滑动到下一个视频完全没有问题 但是当我滑动到上一个视频 已经在播放 时 表面视图重叠 同时 我可以毫无
  • getRunningAppProcesses 在 Android L (5.1.1) 上返回空列表 [重复]

    这个问题在这里已经有答案了 我刚刚测试了我的应用程序和 CM ATM Android Assistant 等 它们都无法获取正在运行的进程列表 但它们在预操作系统版本上运行良好 那么 Android L 5 1 1 发生了什么 请帮忙 am
  • 以编程方式更改 android 按钮可绘制图标颜色

    我想以编程方式更改按钮的图标颜色 在我的 xml 上 我有 android drawableTint color colorPrimary android drawableTop drawable ic car black 24dp 要设置
  • ZipResourceFile 无法解析为类型

    我正在尝试重写我的应用程序以使用 APK 扩展文件 我一直在关注这里的文档http developer android com google play expansion files html http developer android
  • 反序列化时出现 Gson 异常(无参数构造函数不存在)

    我遇到了一个问题 该问题仅在 5000 台设备中的 10 台中出现 无法用我的模拟器和测试设备重现它 这似乎是一个非常具体的问题 仅涉及少数设备 我所拥有的只是堆栈跟踪和我的代码 因此 我正在针对黑洞进行开发 只有在 GooglePlay
  • 使用 JWT 创建 Firebase 自定义身份验证令牌

    为了创建 firebase 自定义身份验证令牌 我使用第三方 JWT 库 https github com jwtk jjwt https github com jwtk jjwt 在此库中 有一个选项可以添加 firebase 自定义令牌
  • 如何将两个 APK 合并为一个,以便两个应用程序可以同时安装

    如何将 2 个 Android 应用程序合并到捆绑包中 以便在安装捆绑包时同时安装两个应用程序 我想将 2 个 APK 合并到一个捆绑包中 以便我可以将其上传到 Android Market 当有人将其安装到设备上时 这两个应用程序都应该安
  • 在 Android 应用程序中使用传单来显示在线地图

    是否有任何示例项目展示如何正确使用传单在 Android 应用程序中显示在线地图 因为我尝试了很多示例 但每次我的应用程序中都有一个空的网络视图 这是我的代码 private WebView mWebView Override protec
  • 膨胀类 android.support.v7.internal.widget.NativeActionModeAwareLayout 时出错

    如果您以前解决过这个问题 请有人帮助我 我正在尝试使用材料设计制作一些东西 以便应用程序可以运行到 API 10 的低版本 我的代码中没有任何错误 但我不断收到此错误 Android 日志猫 06 01 05 05 37 414 E And
  • 回购:找不到命令?

    我是 git 和 repo 的新手 我使用的是window 7 所以我使用cygwin 我已经从 cygwin 安装程序安装了 git 之后我尝试在 cygwin 中使用以下命令进行存储 repo init u git android gi
  • 启动 Activity 时自动弹出键盘

    我有一个相对简单的问题 我有一个包含很多 EditText 的活动 当我打开活动时 它会自动聚焦到第一个 EditText 并显示虚拟键盘 我怎样才能防止这种情况发生 在 XML 文件的布局标签中使用此属性 android focusabl
  • Android中计算两个时间之间的差异

    我有两个字符串变量 例如 StartTime 和 EndTime 我需要通过用 StartTime 减去 EndTime 来计算 TotalTime StartTime和EndTime的格式如下 StartTime 08 00 AM End
  • java.io.IOException:Android Firebase 中的 FIS_AUTH_ERROR 但调试模式正常

    我在检索 firebase 令牌时遇到以下问题 FirebaseMessaging getInstance getToken 在调试模式下 我获取令牌并将其发送到服务器 在运行模式下 应用程序工作正常 它已发布 但我无法获取令牌 因为我已经
  • 使用本机短信编辑器发送短信后如何返回意图

    我正在使用下面的代码使用本机短信编辑器发送短信 Intent intent new Intent Intent ACTION VIEW intent putExtra address 1234567890 intent putExtra s

随机推荐

  • 如何根据子值使用 jq 提取键

    我正在尝试使用 jq 处理一些 JSON 具体来说 我想要一个基于其子值的特定键 给定示例 foo primary true blah beep bar primary false blah narf baz primary false b
  • 来自 PHP exec 的 taskkill

    我刚刚尝试执行此操作 function kill hr exec taskkill IM uper exe output array return print r output echo br return 然而 输出是这样的 它不是很有用
  • 根据单元格值复制行并粘贴到具有相同单元格值名称的新工作表上

    我有一个数据表 其中包含 3 列的员工列表 COLUMN A DEPARTMENT COLUMN B EMPCODE COLUMN C EMPNAME 这是示例数据 我想根据 COLUMN A DEPARTMENT 拆分此工作表的内容 并将
  • Angular:根据从下拉菜单中选择的选项显示 div 内容(ng-show/ng-switch)

    所以我对前端 角度 bootsrap 等 完全陌生 但我这里有一个我创建的 JSFiddle 链接 我想做的基本上是如果有人在下拉列表中选择选项 VA 菜单 我想使用适当的 ng 开关或显示 并显示具有相同名称的 div 类 在本例中为 d
  • 使用 CType 时检测从 Windows DLL 调用 Python 脚本

    我正在寻求在 Windows DLL 中添加功能来检测调用 Python 脚本的名称 我正在使用 ctypes 通过 Python 调用 dll 如答案中所述如何从脚本语言调用 DLL 在 dll 中 我能够使用 WINAPI GetMod
  • 如何在 Jupyter Lab 中打开调试器按钮

    我正在使用 jupyter lab 并尝试嵌入debugger in it Windows 10 64 bit 以下是我遵循的步骤 conda create name ml python 3 8 2 conda activate ml co
  • 使用 Chef 在 Windows 节点上挂载 Windows 共享

    我正在尝试将文件从 Windows 共享复制到我的节点的缓存 显然没有办法从remote file 做到这一点 所以我的替代想法是尝试将Windows 共享安装到本地驱动器并通过文件资源访问我需要的文件 然而 即使 Chef 告诉我挂载成功
  • 如何在 Eclipse 中使用调试视角。[调试 java/j2ee 应用程序]

    是否有任何易于遵循的教程来在 Eclipse 中调试 Java J2EE 应用程序 有关如何检查未检查和已检查异常的分步指南 我一直试图在互联网上寻找 但没有用 要添加 Java 异常断点 在 调试 透视图中选择 断点 视图 然后单击异常断
  • ip地址和mac地址的正则表达式

    谁能建议我 ip 地址和 mac 地址的正则表达式 我正在使用 python 和 django 例如 http ip地址 SaveData 127 0 0 1 00 0C F1 56 98 AD 对于 mac 地址 我尝试遵循但没有成功 0
  • 以 boost 精神实现运算符优先级

    我试图复制这个例子为了实现类似 C 的运算符优先级规则 我从一个子集开始 但最终计划添加其他子集 尽我所能 我无法获得解析单个二进制操作的语法 它可以很好地解析文字 44 3 42 stackoverflow 但会失败 例如3 4 我确实看
  • 通过 Selenium 运行测试用例时出现 java.lang.NullPointerException

    我面临 NullPointerException 的问题 我尽了最大努力 但无法解决这个问题 我正在为我的项目实现 POM 模型 Selenium 这一页 public class VendorsHomePageApp WebDriver
  • 用科学记数法写json float

    我想使用 Python 3 6 以科学记数法表示 JSON 文件中的浮点数 没有 import json a 0 001234567 print json dumps a json encoder FLOAT REPR lambda x e
  • 如何防止 Android 设备在插入电源时进入睡眠状态

    我希望每当我的一项活动正在运行并且手机插入电源时都保持屏幕打开 我知道唤醒锁很棘手 因此我正在寻找有关如何实现此特定目标的示例或一些文档 不要为此使用唤醒锁 只需设置和清除窗口标志WindowManager LayoutParams FLA
  • 在Python中的嵌套字典中添加键

    elements hydrogen number 1 weight 1 00794 symbol H helium number 2 weight 4 002602 symbol He Add an is noble gas氢和氦字典的布尔
  • QFileSystemModel 自定义图标?

    在我的项目中 我有一个 QTreeView 显示我的驱动器上的位置 我需要将文件的所有图标更改为自定义图标 但保留文件夹 我重新实现了 QFileSystemModel 并且能够更改所有图标 有什么方法可以限制仅更改文件而不是文件夹吗 QV
  • 我怎样才能知道 JSF 组件的 id 以便在 Javascript 中使用

    Problem 有时你会想从 javascript 访问一个组件getElementById 但是 id 是在 JSF 中动态生成的 所以你 需要一种获取对象 ID 的方法 我在下面回答了如何做到这一点 原问题 我想使用如下代码 如何在 J
  • 无法更新数据库“*.mdf”,因为只读 EntityFramework

    我有一个 C NET Framework 4 0 桌面应用程序 其中实体框架作为 DAL 当尝试将数据保存到除我之外的任何人的机器上的 DBContext 时 我收到了一个异常 Failed to update database mdf r
  • 属性和多态性

    我有两节课 public class Increase public int a 3 public void add a 5 System out println f class SubIncrease extends Increase p
  • R 中的行相关

    我有两个相同大小的矩阵 我想计算这些矩阵中每对行之间的相关系数 A 的第 1 行与 B 的第 1 行 A 的第 2 行与 B 的第 2 行 等等 A lt matrix runif 1 200 nrow 20 B lt matrix run
  • 在 Android 中使用通过 OTG 线连接的 USB 播放视频?

    我想问是否有可用的应用程序 用户可以通过 OTG 电缆设备将 USB 连接到 Android 并播放其中包含的媒体 特别是视频 我制作了一个广播接收器来检测连接的 USB 我也想读取内容 我正在使用这个代码片段 private final