Nick's blog Nothing to see here?

Why using Magisk to install .APK files is a bad idea


TL;DR: it breaks

(this post is extra short because I am lazy)

Installing system apps after first boot

(this section also applies to recovery installs if performed after first boot)

  • Default permissions are not assigned -> the installed app does not have any permissions granted
  • Restricted permissions are not whitelisted -> you can’t grant SMS or background location permission
  • The app can’t access the Internet on many custom ROMs -> LineageOS’ restricted networking feature only whitelists apps if installed while booted or once after first boot

Using Magisk to install system apps

  • Magisk Hide hides the .APK file from the app -> it crashes :)
  • Magisk DenyList hides the .APK file from the app -> it crashes :)
  • Meet KernelSU: it hides the .APK file from the app - by default -> it crashes :)
  • Magisk Delta SuList: it hides the .APK file from the app -> it crashes :)
  • Universal SafetyNetFix: it hides the .APK file from GmsCore -> it crashes :)
  • If you want to workaround above issues by using pm install but you are installing GmsCore (microG or Gapps, a common usecase) - tough luck, the Magisk manager will be killed by Android if you try to because it depends on GmsCore for SSL -> Magisk manager appears to crash (but is killed by system) during module install
  • SuList has another, chicken egg problem with overlays (technically APK files): It hides the overlay from system_server which doesn’t like that, and you can only whitelist after bootup completed -> device bootloop and you can’t fix it :)
  • It conflicts with debloaters: depending on your luck, the order of the alphabet and some other things, a debloater can override your APK and make it disappear -> the app is gone :(
  • Sometimes, things happen which I don’t understand - multiple users are reporting that microG uninstalls itself when you install an update (but it works if you don’t) -> you have a headache :(

Similar Posts