Java 如何完全卸载Android系统应用程序?

Java 如何完全卸载Android系统应用程序?,java,android,uninstallation,Java,Android,Uninstallation,我正在开发一个Android系统应用程序。要卸载它,仅从系统/app中删除APK有时不会删除其共享首选项 那么,完全卸载系统应用程序以确保其删除与此应用程序相关的所有内容的正确方法是什么呢?您似乎在根设备上执行此操作。因此,以下命令将完成您的任务: adb shell rm /system/app/APK_NAME.apk // Removes apk file from /system/app/ location adb shell pm clear com.yourapp.pack

我正在开发一个Android系统应用程序。要卸载它,仅从
系统/app
中删除APK有时不会删除其共享首选项


那么,完全卸载系统应用程序以确保其删除与此应用程序相关的所有内容的正确方法是什么呢?

您似乎在根设备上执行此操作。因此,以下命令将完成您的任务:

adb shell rm /system/app/APK_NAME.apk      // Removes apk file from /system/app/ location
adb shell pm clear com.yourapp.packagename // Removes application data
它可能需要根权限,因此在运行上述命令之前,您应该运行以下命令以获得根权限:

adb root
adb remount

然后运行上述命令。

这是一种删除/卸载(而不是从手机上,因为它会在出厂时重置)几乎所有不带root的应用程序,包括系统应用程序(提示:通常可以通过搜索“ccc”来查找更新或不更新手机线路的恼人更新应用程序)

为此,您需要:
  • 安装了adb吗
  • 是否已打开usb调试

    a。在手机中,进入设置-->系统-->关于手机-->快速点击7次“内部版本号”

    b。在手机中,转至设置-->系统-->开发者选项

    c。在“调试”下打开“USB调试”

  • 通过USB电缆将手机连接到

  • 以下示例将终止总统警报应用程序: 它看起来是这样的: 要查看用户,请运行: 您将看到如下内容: 第一个数字“0”是用户ID号,然后用“:”分隔,接下来是用户的“名称”或用户名(“所有者”在上面的示例中),然后是另一个“:”组号(13)。您只需要用户号码/UID“0”。很少看到一个以上的用户。Android操作系统可以支持>1个用户,但我还没有看到它被使用过。可能有一些应用程序的响应为“失败”,但95%以上的应用程序的响应为“成功”

    要列出您可以运行的所有应用程序,请执行以下操作: -f开关用于“完整”列表,其输出为以下格式: package://.apk=com.app.name 其中“package:”后面始终紧跟着应用程序的apk文件的完整路径,然后紧跟着“=”然后是dotten标记的应用程序名称-注意“=”的左/右没有空格。以下是一个例子:

    package:/system/priv-app/MmsService/MmsService.apk=com.android.mms.service
    package:/data/app/aws.apps.netPortDb-1/base.apk=aws.apps.netPortDb
    package:/oem/priv-app/Ignite/Ignite.apk=com.LogiaGroup.LogiaDeck
    

    你会注意到有3个起始目录[/system、/data、/oem]系统应用程序通常以/system开头;你安装的应用程序通常以/data开头;而由手机用户(VZW、ATT等)强制安装的应用程序通常以/oem开始。然而,ios在很多情况下都不是100%的情况,应用程序的放置方式也是如此。

    您是否正在删除apk?你是哪个司令部的using@PankajKumar:使用ES file explorer应用程序,转到系统/应用程序,选择我的应用程序并删除。如果在设备运行时执行此操作,或者我也可以在恢复模式下使用它吗?当设备运行时。adb shell rm和CMOB之间的区别是什么?
    $ adb shell pm uninstall --user 0 com.android.cellbroadcastreceiver
    Success
    
    adb shell pm list users
    
    $ adb shell pm list users                                                
    Users:
         UserInfo{0:Owner:13} running
    
    $ adb shell pm list packages [-f]
    
    package:/system/priv-app/MmsService/MmsService.apk=com.android.mms.service
    package:/data/app/aws.apps.netPortDb-1/base.apk=aws.apps.netPortDb
    package:/oem/priv-app/Ignite/Ignite.apk=com.LogiaGroup.LogiaDeck