1

我想从/system. 我有超级访问权限DELETE_PACKAGE,以及清单中的权限。但是当我跑步时

Runtime.exec("pm uninstall package")

我明白了

ERROR/AndroidRuntime(10981): java.lang.SecurityException: Neither user 10094 nor current process has android.permission.DELETE_PACKAGES.

有谁知道如何解决这个问题?

4

2 回答 2

3

不管你是否有root访问权限。如果不将其重新安装为读/写,您将无法卸载 /system 中的任何内容。/system 是只读的。

你将不得不运行这样的东西:

mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system

然后做你的pm uninstall package,最后把挂载点放回只读状态。

mount -o ro,remount -t yaffs2 /dev/block/mtdblock3 /system 

chmod 不会改变 /system 中的所有内容都是只读的这一事实。这意味着没有权限修改或删除文件。您必须重新安装它才能将其删除。仅供参考,您可以编辑原始问题以添加清单,但我不需要它,我知道这是您的问题。

如果 /system 是只读的,你甚至不能做rm /system/somefile.ext. 你会得到 /system 是只读的错误。运行时可能会发生同样的事情pm uninstall,它只是假设它是一个权限问题,它有点像。

于 2010-07-15T03:38:43.783 回答
0

正如我刚刚读到的,galaxy s 上的 /system 有现货。我同意你必须先安装 /system 的观点,但是当我在 Galaxy s 上进行测试时,这无法解决上面发布的错误。(mount 甚至不是galaxy s 上的有效命令)。

于 2010-07-16T20:51:35.287 回答