美文网首页@IT·互联网
【Java】读取手机文件名称

【Java】读取手机文件名称

作者: LI耳 | 来源:发表于2024-03-10 01:51 被阅读0次

    首先,确保你已经连接了你的手机并已启用 USB 调试模式。然后,你需要使用 Android Debug Bridge(ADB)工具来获取手机文件列表。以下是一个简单的 Java 代码片段,使用 ProcessBuilder 调用 ADB 命令来获取文件列表:

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.List;
    
    public class ADBFileLister {
    
        public static void main(String[] args) {
            String adbPath = "path/to/adb";  // 替换为你的 adb 路径
            String deviceID = "your_device_id";  // 如果只连接了一个设备,可以为 null
    
            // Android 文件路径
            String androidPath = "/storage/emulated/0/BaiduNetdisk/我的学习";
    
            List<String> fileList = listFiles(adbPath, deviceID, androidPath);
    
            // 打印文件列表
            for (String file : fileList) {
                System.out.println(file);
            }
        }
    
        private static List<String> listFiles(String adbPath, String deviceID, String androidPath) {
            List<String> fileList = new ArrayList<>();
    
            // 构建 ADB 命令
            List<String> command = new ArrayList<>();
            command.add(adbPath);
            if (deviceID != null) {
                command.add("-s");
                command.add(deviceID);
            }
            command.add("shell");
            command.add("ls");
            command.add(androidPath);
    
            // 执行 ADB 命令
            try {
                ProcessBuilder processBuilder = new ProcessBuilder(command);
                Process process = processBuilder.start();
    
                // 读取命令输出
                BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
                String line;
                while ((line = reader.readLine()) != null) {
                    fileList.add(line);
                }
    
                process.waitFor();
            } catch (IOException | InterruptedException e) {
                e.printStackTrace();
            }
    
            return fileList;
        }
    }
    
    

    请注意
    替换 adbPath 为你本地的 ADB 工具的路径,
    deviceID 为你设备的 ID(可以通过 adb devices 查看),
    androidPath 为你想要列出文件的 Android 设备路径。

    此代码片段调用 ADB 命令 adb shell ls,并将输出的文件列表读取到 fileList 中。请确保你的手机已连接,并且 ADB 工具的路径正确。

    相关文章

      网友评论

        本文标题:【Java】读取手机文件名称

        本文链接:https://www.haomeiwen.com/subject/qxouzdtx.html