我写了一些东西来卸载(删除)一个应用程序,现在有一个问题,apk 似乎已被删除,但应用程序并没有真正从手机中删除..
据称已删除的应用程序仍存在于启动器应用程序抽屉中。我可以打开应用程序,但它会强制关闭应用程序。
我使用自己的应用程序(存在于 /data/app,而不是 /system/app)测试了该过程。使用 systemapps 我没有测试。
这里的代码:
private void delApp() {
String deleteCMD = "rm " + packageInfo.applicationInfo.sourceDir;
Process process;
try
{
process = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
os.writeBytes("mount -o remount,rw -t rfs /dev/stl5 /system; \n");
os.writeBytes(deleteCMD+"; \n");
os.writeBytes("mount -o remount,ro -t rfs /dev/stl5 /system; \n");
os.flush();
}
catch (IOException e)
{
e.printStackTrace();
}
}