问题标签 [android-usb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
201 浏览

android - 检测到 USB 打印机,但未打印

卡住了一个问题。尝试通过 USB 打印机 (HP 1108) 从我的 android 设备打印。检测到打印机,但是当我尝试打印时,打印机没有响应。请为任何解决方案提供帮助。

这是我的代码

0 投票
0 回答
1011 浏览

android - android如何注册应用程序以进行“打开方式”选择

当通过 USB 将外部设备(例如相机)连接到 Android 智能手机时,您通常会看到一个弹出窗口:“为 USB 设备选择一个应用程序”,选择框中有一些不同的应用程序。

所以我的简单问题是:我怎样才能在选择中获得自己的应用程序。

我在stackoverflow上能找到的所有东西都是过滤意图,但我什至不确定这是否是正确的方向,因为它们主要用于文件打开和类似的东西。

感谢评论我想出了这个:

如果我用这个设置做对了(显然我没有做对),那么在连接 USB 设备时,应用程序现在应该在选择中可见,但它仍然不是。

编辑:解决方案:我必须添加:<uses-feature android:name="android.hardware.usb.accessory" />

至少protocol="0"在过滤器中。

0 投票
2 回答
1489 浏览

java - 是否可以以编程方式关闭 Android 设备上的 USB 存储?

我试图一遍又一遍地搜索并且很困惑我们是否可以在不植根手机的情况下控制USB存储,如果可以,比如何?我尝试了以下方法来启用和禁用权限,但都是徒劳的:

如果有人对此有任何想法,请分享您的知识。

提前致谢。

0 投票
1 回答
303 浏览

java - Android 应用需要权限才能读取 USB 设备上的媒体


我已经创建了一个 android 应用程序,并且我最近更新了它。但是,现在该应用程序需要从 USB 设备读取数据的权限,即使我没有在任何地方使用它并且它在我的 AndroidManifest.xml 中的任何地方都不存在。我使用的唯一外部库是 Giftiz API、ADMob API 和 AdBuddiz API 在更新之前它只包含 ADMob API 和 AdBuddiz API,所以新的东西是 Giftiz API,但其他使用 Giftiz API 的应用程序没有需要那个许可。

有什么方法可以找到我在代码中请求该权限的位置吗?Android Studio中的某种查找功能?
(这里是Touchty Cube应用程序的链接)

问候

0 投票
2 回答
852 浏览

android - 为什么 UsbManager.getDevicesList() 不能枚举这个特定的设备?

正如标题所述,我在使用 UsbManager.getDeviceList() 枚举支持 USB 的 Android 手机上的特定 USB 设备时遇到了麻烦。我在这台手机和其他手机上枚举和与其他 USB 设备通信没有问题,但是找不到这个特定的 USB 设备。它也不能用USB Device Info等 3rd 方应用程序枚举。

下面是在 PC 上正确枚举的 USB 属性。我已与设备制造商进行了沟通,他们已确认外部公司认证该设备符合 USB 2.0 规范。最初,我怀疑该设备被 Android 拒绝,因为它省略了以下字段:iManufacturer、iProduct 和 iSerialNumber,其他兼容设备包含这些字段。但是,在查看了USB 2.0 规范第 9.5 节的摘录后,这些字段似乎不是必需的:

在适当的情况下,描述符包含对字符串描述符的引用,这些字符串描述符以人类可读的形式提供描述描述符的可显示信息。字符串描述符的包含是可选的。但是,描述符中的引用字段是强制性的。如果设备不支持字符串描述符,则必须将字符串引用字段重置为零以指示没有可用的字符串描述符。

那么,我的问题是,是什么导致 UsbManager 拒绝枚举此 USB 设备?而且,更重要的是,我能做些什么来强制 Android 枚举这个设备吗?理想情况下,我对不需要 root 访问权限的解决方案最感兴趣,但它不一定会破坏交易。

USB 属性


编辑:一些示例代码。


编辑 2:我已经用更多的手机进行了测试。我已经成功枚举了以下手机的 USB 设备:

  • 笔记2
  • LG-V400

以下设备无法枚举该设备:

  • 连结 5
  • 银河 S4、S5、S6
  • LG G2、4G LTE

编辑 3:这是插入 USB 设备后调用Nexus 5的日志。adb shell dmesg您可以在第 4-16 行清楚地看到电话无法枚举设备。

0 投票
0 回答
200 浏览

android - 插入 USB 电源适配器后,Android 设备启动进入操作系统

当我插入 USB 电源适配器时,我想让我的 Android 设备启动到操作系统。SO上提供了涉及编辑“/system/bin/lpm”的解决方案,如下所示。

文件名的变化被标注为“../playlpm”,以及“../ipod”。然而,这些文件都没有出现在最近的 CyanogenMod 版本中。

我检查了 /system/bin/ 中的所有文件,但没有发现特定于 lpm(低功耗管理器)的文件。因此,以前发布的解决此问题的方法均不适用。

关于解决这种情况的建议?TIA

0 投票
1 回答
2645 浏览

android - Android 列出 USB 驱动器中的文件

我目前有一个工作实现,允许我列出 USB 设备,请求该 USB 设备的权限,然后连接到它们(主要来自http://developer.android.com/guide/topics/connectivity/usb/host.html) . 我拥有的代码与链接的文章相同,但提供的类中的任何方法都不是用于列出设备上的文件或检查文件是否存在。

但是我不明白如何列出 USB 设备上的文件以在传输数据之前检查文件是否存在。

设备“路径”沿线,/dev/bus/usb/00x但不能直接通过File. 我看到该应用程序ES File Explorer能够列出 USB(非根设备)上的文件,所以我知道这是可能的。我也尝试过访问 URI 路径usb://100x,就像 ES File Explorer 正在这样做一样,但我没有运气。

我曾尝试使用存储访问框架。在三星 Galaxy Tab 上,它可以与 SD 卡和 USB 一起使用,但是在 Google Nexus 10 上,它不能与任何一个(它没有 SD 卡插槽)一起使用,所以我正在尝试实现另一种与 USB 通信的方式。

版本是棒棒糖及以上。

有任何想法吗?谢谢。

0 投票
2 回答
884 浏览

android - 如果应用程序已在运行,如何在连接 USB 附件时接收 Intent

我可以在这里阅读有关如何在连接 USB 附件时启动我的应用程序的信息,并且一切正常:我的清单中内置了一个 IntentFilter,每次连接指定的附件时都会启动适当的活动。看起来是这样的:

但是,如果在连接附件时我的 Activity 已经在运行,我会遇到问题。在 MainActivity 中,我在两个地方查找 USB_ACCESSORY_ATTACHED Intent:onCreate 和 onNewIntent,如下所示:

但是,如果 MainActivity 已经在运行,则在插入附件时不会调用 onCreate 和 onNewIntent。在这种情况下,我需要在插入配件之前关闭我的应用程序,这对用户来说会很麻烦。如果我的活动已经在运行,那么从我的 USB 配件接收 Intent 的适当方式是什么?我需要在活动本身内实现一个单独的侦听器吗?

0 投票
1 回答
125 浏览

android - 有没有办法获取Android手机充电器的供应商ID?

我正在考虑为 Android 手机提供安全性的应用程序。我的想法是保存供应商 ID 或 USB 充电器的某种唯一 ID。它将充当配对设备。然后充电器将被授权。如果手机用不同的充电器充电,它应该会触发一些手机被盗的预加载手机号码的短信。也许这是一个愚蠢的问题。但我必须这样做。在 android 中有一种方法可以找到 USB 充电器的供应商 ID。我没有任何方法可以做到这一点。所以如果有人知道,请指导我如何做到这一点。提前致谢。

0 投票
1 回答
669 浏览

android - 如何使用 USB 网络摄像头修复 Android 中的拔出 USB 电缆错误?

我创建了一个基于与网络摄像头连接的 android 应用程序。该应用程序在与网络摄像头连接时发挥作用。但是当我拔掉电源时,我的手机应用程序崩溃并显示“不幸的是应用程序已停止工作”。

视频活动:

UVC相机:

}