1

我正在使用两部手机,Galaxy Nexus(JellyBean) 和 Nexus 5(KitKat)。我正在尝试执行一个存在于

/数据/文件夹/脚本/run.sh

我使用 Process.Builder 来构建命令。该命令是通过获取构建的

Environment.getDataDirectory().toString() + "/folder/scripts/run.sh"

在 Galaxy Nexus 上运行它没有问题,但是当我在 Nexus 5 上运行它时,我在运行 process.start() 时发现了一个异常。我得到的输出包含:

运行 exec() 时出错。命令:[/data/folder/scripts/run.sh, "param"]。工作目录:空环境:[ADNROID_ROOT=/system ...]

我的脚本的目录结构在两个文件上是相同的。

编辑:

所以我一加载应用程序就在查看 logcat,我想我已经查明了问题所在。

有一个错误说 Manifest file not found。警告:java.io.FileNotFoundException /data/folder/Manifest:打开失败的 EACCESS(权限被拒绝)。

这不适用于运行 JellyBean 的 Galaxy Nexus。KitKat 是否存在安全问题?

4

1 回答 1

1

问题是由于没有root访问权限。当 SuperSu 授予应用程序权限时已修复。

于 2014-04-29T19:29:58.607 回答