如何获取android设备的所有装载点信息?
如何以编程方式获取Android设备的所有挂载点信息?不完全是Android API的一部分,但如果您阅读/proc/mounts,底层linux将告诉您正在使用的挂载点信息 作为澄清,在以后的Android版本中,Linux能够为每个进程祖先提供唯一的装载,因此应用程序进程看到的装载可能(通常会)不同于从ADB或核心系统进程启动的装载。/proc/mtd 或在其他手机上: /程序/emmc如何获取android设备的所有装载点信息?,android,Android,如何以编程方式获取Android设备的所有挂载点信息?不完全是Android API的一部分,但如果您阅读/proc/mounts,底层linux将告诉您正在使用的挂载点信息 作为澄清,在以后的Android版本中,Linux能够为每个进程祖先提供唯一的装载,因此应用程序进程看到的装载可能(通常会)不同于从ADB或核心系统进程启动的装载。/proc/mtd 或在其他手机上: /程序/emmc 这将显示所有分区及其名称-当前可能已装入,也可能未装入。您可以通过检查/proc/partitions查
这将显示所有分区及其名称-当前可能已装入,也可能未装入。您可以通过检查
/proc/partitions
查看系统已知的分区。根据我的HTC愿望:
major minor #blocks name
31 0 640 mtdblock0
31 1 4608 mtdblock1
31 2 3072 mtdblock2
31 3 256000 mtdblock3
31 4 40960 mtdblock4
31 5 151168 mtdblock5
179 0 3872256 mmcblk0
179 1 2872070 mmcblk0p1
179 2 1000185 mmcblk0p2
mtdblock
设备是手机的内部闪存mmcblk0
是手机的SD卡
查看安装位置的最佳方法是检查/proc/self/mountinfo
。这比/proc/mounts
更好,因为后者会丢失某些信息。同样,在我的HTC愿望中(为了更好的衡量,我添加了列标题并通过column-s
运行输出):
这与我的三星j5一起工作 亚行壳牌df-h
adb壳牌df-h 范例
Filesystem Size Used Avail Use% Mounted on
tmpfs 3.6G 1.1M 3.6G 1% /dev
tmpfs 3.6G 0 3.6G 0% /mnt
如何理解从/proc/mounts获得的这些值-->rootfs/rootfs ro,relatime 0 0 tmpfs/dev tmpfs rw,relatime,mode=755 0 devpts/dev/pts devpts devpts rw,relatime,mode=600 0 proc/proc proc rw,relatime 0 sysfs/sysfs rw,relatime 0 0。阅读内核源代码或从已知的实体中找出它:看起来是{device,mountpoint,type,options,etc.}但是不能保证在某个时候不会改变。谢谢你,克里斯。你会知道这个问题的答案吗:“mtdblock设备是手机的内部闪存。mmcblk0是手机的SD卡。”。这似乎不是一个有效的假设。在我的平板电脑上(Dell 7)它既有内存又有SD卡,只有mcc*分区。是的,这只是一个解释性的观察。假设不同设备上会出现这种情况是无效的。
Filesystem Size Used Avail Use% Mounted on
tmpfs 3.6G 1.1M 3.6G 1% /dev
tmpfs 3.6G 0 3.6G 0% /mnt