我正在使用两部手机,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 是否存在安全问题?