我有一个桌面java应用程序,也是一个Android应用程序.两个app一起工作.
桌面应用程序中的用户有一个按钮来启动设备数据应用程序与计算机应用程序之间的传输,反之亦然.
所以我需要用简单的USB线传输数据,没有互联网连接/ WiFi /蓝牙/ adb.
我找到两个可以在Windows上运行的Java MTP库来解决我的问题,以及android的USB Host/accesory功能:
jMTP成功识别我的Android设备,文件夹和其他内容
我成功地在计算机--->设备中传输文件,但是当我尝试在设备中传输文件时出错 - >计算机
在解释之后我把我的代码.
jusbpmp但我没有可能转移设备--->电脑.
USB主机/附件无用,因为传输是从桌面应用程序启动的,当我在android开发者指南网站上阅读时,它似乎与我需要的不一致,或者可能是用户从设备开始传输.
我尝试从1周到成功完成这项任务,但似乎我需要帮助.
Java + jMTP代码
private static void jMTPeMethode()
{
PortableDeviceManager manager = new PortableDeviceManager();
PortableDevice device = manager.getDevices()[0];
// Connect to USB tablet
device.open();
System.out.println(device.getModel());
System.out.println("---------------");
// Iterate over deviceObjects
for (PortableDeviceObject object : device.getRootObjects())
{
// If the object is a storage object
if (object instanceof PortableDeviceStorageObject)
{
PortableDeviceStorageObject storage = (PortableDeviceStorageObject) object;
for (PortableDeviceObject o2 : storage.getChildObjects())
{
if(o2.getOriginalFileName().equalsIgnoreCase("Test")) …Run Code Online (Sandbox Code Playgroud)