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

时间:2014-06-02 08:10:13

标签: java

我正在开发一个java应用程序,我必须超过我的窗口电话驱动器。我希望能够通过我的java程序在窗口电话上读写。

问题:

我的问题是,我无法在Windows上找到我的窗口电话设备的路径。窗口没有为电话驱动器分配任何驱动器号,而不是这个,窗口显示的路径类似(计算机\ Windows Phone \ Phone \ Videos)。

当我在我的java程序中使用该路径时,文件未找到异常被提出,这意味着我不能超过该文件夹(视频)使用该路径(计算机\ Windows Phone \ Phone \ Videos)。

我访问了以下链接

Portable Device Path on Windows Getting Portable Devices using java

这两个链接对我都不起作用。  显然有一些像libmtp,jmtp和jusbpmp这样的库,但所有这些都是错误的,我不想使用这些库。

我的问题是,我怎样才能获得窗口电话驱动器的路径,我可以在java中的窗口电话上读取和写入?

有没有办法为Window fone分配驱动器号,以便我的java可以找到该驱动器?我试图从注册和设备管理器那里获得这条路径但是徒劳无功。我也试过读取Win32_USBHub数据库,但也没有带来解决方案。引导我走向正确的方向。感谢

1 个答案:

答案 0 :(得分:0)

我知道一个允许使用MTP进行访问的项目 http://code.google.com/p/jmtp/

        // 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());
                }
            }
        }