首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Android

android 下如何判断两个路径实际上是同一个位置的情况

  •  
  •   mengrusheng · 2015-04-18 21:04:37 +08:00 · 1675 次点击
    这是一个创建于 1252 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大概和Linux的链接有关,android上会出现两个路径实际上是同一个位置的情况,比如部分机型的sd卡路径有 /storage/sdcard0 /storage/emulated/0 两种结果,但是两者指向的是一个目录,如何在代码里区分这种情况呢?

    12 回复  |  直到 2015-04-20 14:00:38 +08:00
        1
    uglyer   2015-04-18 22:58:17 +08:00   ♥ 1
    写个文件进去看下另一个路径是不是也能读到这个文件 (逃
        2
    laotaitai   2015-04-18 23:43:17 +08:00
    @uglyer 这个方法简单直白使用, 文件名就是随机名.
        3
    acess   2015-04-19 00:13:02 +08:00
    linux有个命令realpath,可以对付软链接,但对付不了bind mount
    android不太清楚……
        4
    churchmice   2015-04-19 00:16:47 +08:00   ♥ 2
    用 ls -i 比较inode
        5
    aaronmix   2015-04-19 00:48:03 +08:00
    用Environment.getExternalStorageDirectory().getPath()?
        6
    ilotuo   2015-04-19 10:55:44 +08:00 via Android   ♥ 1
    用命令还得两次判断提取返回
    前面说的创建一个文件判断 虽然很粗暴但是简单呐
        7
    Krime   2015-04-20 08:53:39 +08:00
    @ilotuo 这样文件判断的话,如果知道两个目录,只需要验证还好,如果只知道其中一个想找另一个就不太靠谱了
        8
    mengrusheng   2015-04-20 13:56:14 +08:00
    @uglyer @laotaitai 简单粗暴的方法确实有效 3q
        9
    mengrusheng   2015-04-20 13:58:00 +08:00
    @acess 这命令不好用 /system/bin/sh: realpath: syntax error
        10
    mengrusheng   2015-04-20 13:59:19 +08:00
    @churchmice 应该是个好办法 就是略复杂 谢谢
        11
    mengrusheng   2015-04-20 13:59:56 +08:00
    @aaronmix 那个一般返回的是内置sd卡路径
        12
    mengrusheng   2015-04-20 14:00:38 +08:00
    @Krime 我的场景就是这样 刚刚好
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1781 人在线   最高记录 3762   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 21ms · UTC 10:40 · PVG 18:40 · LAX 03:40 · JFK 06:40
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1