如何将应用安装到Android Desire的系统分区
当尝试把一个应用(MyApp.apk)推送到Android设备的系统的/system/app目录时,使用adb push命令失败了,并报告“permission denied”的错误。另一种方法——先在SD卡上推送文件再尝试复制到\system/app,这种方法在具有ROOT权限的HTC Hero设备上工作正常,但是在另一台HTC Desire设备(根系统中)却产生了内存不足的错误。
问题分析
这个问题的根本原因在于,尽管你的设备已经进行了Root操作,但仍然不能通过adb命令直接向/system目录书写。这意味着你需要进一步的操作才能获得对系统的写入权限。
解决方案
-
使用Revolutionary工具:
按照Revolutionary工具的指导,关闭保护机制。这会给你提供足够的权限来修改系统文件和目录。 -
使用Busybox:
如果你已经在设备上安装了Busybox, 可以尝试在ADB shell中使用busybox cp /sdcard/MyApp.apk /system/app/
命令。这样可以绕过内存不足的问题。 -
通过快速boot模式:
在设备的恢复模式中,你可以直接将文件移动到系统目录下。需要做到这点的方法是启动recovery(通常是进入ADB shell并执行echo reboot recovery
),然后在recovery mode中复制或使用Busybox cp命令来复制文件。 -
手动挂载:
有时也可以尝试通过ADB shell手动挂载/system分区作为可写入的。尽管这种方法通常要求特殊的权限,但如果已经拥有足够的root访问控制,则仍然可能有效。
例如:
adb shell
mount -o rw,remount /system
cp /sdcard/MyApp.apk /system/app/
请按照正确的顺序进行这些步骤,并注意不要直接修改系统文件以免造成设备故障。
结论
确保你对操作有充分了解并在安全的环境下进行任何涉及系统的变更。如果你不熟悉命令行和硬件编程,尝试寻找专业的帮助或使用可靠的应用程序来实现所需的操作。