0

在我需要 root 的 android 应用程序中,我需要能够将文件复制到 SD 卡和从 SD 卡复制文件。在大多数情况下,需要 root 权限。我遇到的问题是

    cp -fp <source> <destination>

<destination>当或<source>包含时不起作用Environment.getExternalStorageDirectory()

阅读日志,我注意到它失败了No such file or directory

但是,当复制到 SD 卡时,我确保在 shell 中运行命令之前在函数中创建了目录,并且从 SD 卡复制时,文件存在。

是否有另一种方法可以在 shell 中复制文件(我尝试过cp,busybox cpcat)?

还是有其他方法可以直接获取 SD 卡上我的文件所在位置的路径?

4

1 回答 1

1

在我问这个问题后,实际上设法解决了这个问题。信息Environment.getExternalStorageDirectory()正在返回/storage/emulated/0/

通过替换Environment.getExternalStorageDirectory()一切/sdcard/正常工作。

编辑 1:
替换Environment.getExternalStorageDirectory()/sdcard/导致设备限制(如下面的鞋鼠所指出的)。筛选android.os.Environment让我找到了另一个可用的替代方案System.getenv("EXTERNAL_STORAGE")。一切仍然正常工作。

于 2013-10-16T03:35:22.097 回答