完全卸载Lollipop上的应用


16

我在Android 5.0(Nexus 5)上卸载应用程序时遇到问题。我正在开发Android应用程序,因此我直接在设备上调试/运行该应用程序。为了生产,我使用密钥库导出了相同的应用程序,卸载了我先前运行的调试APK,尝试安装签名的APK,但出现此错误:

已经安装了具有相同名称且签名冲突的现有软件包。

是否因为字节码仍在ART运行时中?有人知道如何解决吗?

Answers:


27

当您使用常规的棒棒糖之前方法卸载应用程序时(例如,拖动到“废纸“”图标,或从“ 应用程序信息” >“ 卸载”),则仅在当前用户上卸载该应用程序。可以通过在库存应用程序管理器上显示“未安装”的应用程序进行确认。Android会检测到该应用程序仍然存在,从而阻止用户使用相同的程序包名称安装该应用程序。

这是由于来宾帐户(如果已激活)导致的,因此在安装应用程序后,会自动在所有用户上安装该应用程序。因此,您也需要从那里卸载该应用程序,这在日常使用中可能会很麻烦。

有一些方法可以完全卸载应用程序(根据实际情况排序):

  1. (通过所有者帐户)转到设置 > 应用,找到并打开应用信息。然后,打开溢出菜单(3个垂直点),然后为所有用户选择卸载
  2. (来自来宾帐户)如果不需要,请停用来宾帐户(有关更多信息:从Android Lollipop中删除默认的来宾用户帐户
  3. (从PC)adb uninstall <package>在命令提示符/外壳上输入。这与“为所有用户卸载”相同
  4. (来自访客/其他帐户)找到该应用并正常将其卸载。
    • 如果无法将其卸载,请尝试删除该帐户并创建一个新帐户,然后尝试再次查找并卸载该应用程序。

2
禁用了“ 卸载”按钮的应用程序怎么样?就像系统应用程序是由gapps包中的应用程序复制的一样?
罗伯特·科里特尼克

@RobertKoritnik对不起,这超出了此答案的范围,因为卸载系统应用程序需要root用户访问权限,例如此问题
安德鲁·T。

0

我设法通过这种方式卸载:

  • 我首先尝试以常规方式(使用Settings-> Applications-> app-name-> uninstall)进行卸载,这种方式删除了运行它的功能,但显然并没有卸载。
  • 我运行Google Play并查找了该应用程序。
  • 我看到卸载按钮是无效的,但安装 主动,所以我拍了拍安装。现在,我可以运行该应用程序了。
  • 之后,将激活Google Play中的“ 卸载”按钮。
  • 点击“ 卸载”以删除该应用程序。

瞧,它走了!


我猜除非应用程序更新到Playstore中的当前版本,否则卸载按钮将不可见。如果您没有试图以这种方式卸载的应用程序的更新版本,它将显示两个选项,即“打开”或“更新”。您必须先更新应用程序,然后再卸载它,这是用户必须执行的一个额外步骤,但由于用户希望摆脱该应用程序,因此没用。
幸运

@Firelord:1)是的,我的意思是所有上述操作均在您的移动设备上的Google Play商店应用中运行。该应用程序允许您卸载已经安装的应用程序(但是,它不会卸载已预加载到设备上的应用程序)。
Scott Biggs

@Firelord 2)说明:在第3步中,我使用Google Play商店应用重新安装了该应用,并允许我运行它。我返回到Google Play商店(然后再次查找有问题的应用程序)以进行第4步和第5步。希望可以清除所有问题。
Scott Biggs
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.