【发布时间】:2013-09-14 12:59:01
【问题描述】:
我正在开发一个应用程序,我必须使用 USB 从计算机(即 Windows 系统)中放置和获取一些文件。
我搜索了网络,但没有得到任何有用的信息。我对命令行有一个想法,所以我可以通过使用像
这样的命令来做到这一点./adb -s emulator-5554 pull /sdcard/juned.jpg c:/user/juned/images/
它将juned.jpg文件复制到系统的指定目录中,但是是否可以通过编程方式运行相同的命令?
到目前为止,我在 Android Samples 中获得了一个名为 AdbTest 的示例应用程序,该示例应用程序位于 /root/android-sdks/samples/android-18/legacy/USB/ 目录下,我尝试编译该应用程序但它没有显示任何内容。
在xml 目录下的那个应用程序中device_filter.xml 文件在那里。在那个文件中
<resources>
<usb-device class="255" subclass="66" protocol="1" />
</resources>
我应该提供什么价值才能使其与我的设备一起使用?
是否可以通过编程方式从应用程序内部运行adb 命令?
编辑
目前我才知道,adb命令不能在非root设备上执行,那么有没有其他方法可以使用USB传输文件?
【问题讨论】:
-
您可能需要 root 访问权限才能从您的应用中执行此操作
-
@Metalhead1247 有没有针对无根设备的解决方案?
-
这与root无关。相反,问题是您需要在 PC 上安装某种文件服务器,以便根据设备的请求以某种方式使文件可用。 adb 不提供该功能 - 它只接受来自 PC 端的请求。
标签: android usb adb file-transfer