Android 4.3中的vold.fstab文件

我想在我的应用程序中获取外部和内部存储空间.我正在使用此代码

Scanner scanner = new Scanner(new File("/etc/vold.fstab"));

            while (scanner.hasNext()) {
                String line = scanner.nextLine();
                if (line.toLowerCase().contains("dev_mount")) {
                    if (line.toLowerCase().contains("nonremovable")) {
                        VoldMounts.put(line.split(" ")[2],true);
                    }else {
                        VoldMounts.put(line.split(" ")[2],false);
                    }
                }
            }

它在Android 4.2.2及更低版本上运行良好,但在Android 4.3上,文件更改为/fstab.\u0026lt;device\u0026gt;这个文件需要root访问权限.如何在不需要root访问权限的情况下阅读fstab?我不想使用/ proc / mount.

谢谢.

最佳答案
Here是一些官方信息,证实“对于Android版本4.3及更高版本,init,vold和recovery使用的各种fstab文件在/ fstab.文件中统一”.由于该文件具有-rw-r —– root root权限,因此无法从非root用户设备上的应用程序中读取它.

点赞