从Android模拟器中删除手机应用程序?

时间:2011-06-22 12:50:01

标签: android emulation

如何(强行)从模拟器实例中删除股票Android手机应用程序?

我特别喜欢那些已成功删除电话应用程序的人的答案。

删除电话应用程序可能还需要移除联系人应用程序,因为它们紧密集成,这很好。

解决方案

经过大量研究后,似乎唯一的解决方案是从源代码重建Android SDK,如Maciej Pigulski answered

fetching the android source之后,从Android生成文件Phone中删除Contactsbuild/target/product/core.mk。并照常构建SDK,即:

. build/envsetup.sh
lunch generic-eng
make sdk

out/host/linux-x86/sdk中,您将拥有一个包含新的新SD卡的zip文件,可用于例如蚀。

4 个答案:

答案 0 :(得分:2)

我成功删除了手机应用,但没有重建SDK(很长时间运行...)

您可以在SDK中编辑system.img(位于ex:〜/ android-sdk-linux_x86 / platforms / android-10 / images / system.img),对应于模拟器的系统部分(Phone's位于/system/apps/Phone.apk)

我启动了模拟器,将adb连接到模拟器shell。在使用读/写选项重新挂载系统分区后,我删除了打包的/system/apps/Phone.pak(mount -o rw,remount / system / system)

我在我的模拟器中输入为此处找到的arm编译的mkfs.yaffs2工具(http://code.google.com/p/android-group-korea/downloads/detail?name=mkfs.yaffs2.arm

使用此工具在我的模拟器shell中重新创建我的system.img: mkfs.yaffs2 / system /sdcard/system.img

将/sdcard/system.img拉入我的电脑。替换模拟器的system.img(〜/ android-sdk-linux_x86 / platforms / android-10 / images / system.img)并重启模拟器。

手机应用已经过去了!

答案 1 :(得分:1)

如果您具有root访问权限,则可以删除提供此应用程序的.apk文件。您必须环顾安装它的设备上的文件夹。

答案 2 :(得分:1)

我知道如何做到这一点,但这不是一个简单的方法。

它需要Android OS的源代码,您需要一个模拟器。然后在make文件中,您可以禁用包括Phone应用程序到输出图像,并使用'make sdk'任务构建操作系统。这将生成一个SDK(如Google网站提供的SDK),其中包含已排除电话应用程序的二进制文件。然后,当您使用此SDK创建模拟器时,它将没有Phone.apk。

痛苦但如果你真的需要它,试一试。

答案 3 :(得分:0)

可能需要在模拟器上运行re-compile the Android OS。在编译期间default apps are rolled up into the build所以这将是鸡蛋在鸡蛋之前得到的问题......或者在鸡蛋产卵之前杀死它...