如何在java中访问Window Phone驱动器路径以在电话驱动器上读写

如何在java中访问Window Phone驱动器路径以在电话驱动器上读写,java,Java,我正在用java开发一个应用程序,在这个应用程序中,我必须超出我的Windows phone驱动器。我希望能够通过java程序在Windows phone上读写 问题: 我的问题是,在windows上找不到windows phone设备的路径。窗口未将任何驱动器号分配给电话驱动器,而窗口显示的路径类似于Computer\Windows phone\phone\Videos 当我在java程序中使用该路径时,会引发“未找到文件”异常,这意味着我不能使用该路径Computer\Windows Pho

我正在用java开发一个应用程序,在这个应用程序中,我必须超出我的Windows phone驱动器。我希望能够通过java程序在Windows phone上读写

问题:

我的问题是,在windows上找不到windows phone设备的路径。窗口未将任何驱动器号分配给电话驱动器,而窗口显示的路径类似于Computer\Windows phone\phone\Videos

当我在java程序中使用该路径时,会引发“未找到文件”异常,这意味着我不能使用该路径Computer\Windows Phone\Phone\Videos超过该文件夹的视频

我访问了以下链接

这两个链接对我都不起作用。 显然有一些库,比如libmtp、jmtp和jusbpmp,但所有这些都有缺陷,我不想使用这些库

我的问题是,如何获得Windows phone驱动器的路径,使用该驱动器我可以在java中的Windows phone上读写


有没有办法为Window fone分配一个驱动器号,以便我的java能够找到该驱动器?我也曾试图从Registry和device manager获得该路径,但徒劳无功。我还尝试读取Win32_USBHub数据库,但也没有带来解决方案。指引我到正确的方向。谢谢

我知道有一个项目允许使用MTP访问


JetAbe,没有任何不使用任何库的方法吗?childPdo.getOriginalFileName只返回子目录名。我需要那个目录的完整路径。这样我就可以从我的java程序中访问那个目录了。它只返回文件名,有没有办法读取那个文件或者让file对象复制它?
        // Iterate over files
        for (PortableDeviceObject pdo : device.getRootObjects()) {
            // If the object is a storage object
            if (pdo instanceof PortableDeviceStorageObject) {
                PortableDeviceStorageObject pds = (PortableDeviceStorageObject) pds;

                for (PortableDeviceObject childPdo : pds.getChildObjects()) {              

                    System.out.println(childPdo.getOriginalFileName());
                }
            }
        }