Мое приложение работает как системное приложение для пользовательского образа AOSP. Я могу удалить / установить другие APK, которые я загружаю из моего бэкэнда. Однако я не могу удалить другие системные приложения (что является жестким требованием для моей цели). Мой текущий механизм заключается в использовании механизма deletePackage из диспетчера пакетов Android с помощью отражения:
val cPackageManager = Class.forName("android.content.pm.PackageManager")
cPackageDeleteObserver = Class.forName("android.content.pm.IPackageDeleteObserver")
deletePackage = cPackageManager.getMethod("deletePackage", String::class.java, cPackageDeleteObserver, Integer.TYPE)
deletePackage!!.invoke(context.packageManager, packageName, deleteObserver, DELETE_ALL_USERS)
Кто-нибудь знает, как добиться того, что я пытаюсь сделать?