diff --git a/app/src/main/java/org/fdroid/fdroid/views/fragments/PreferencesFragment.java b/app/src/main/java/org/fdroid/fdroid/views/fragments/PreferencesFragment.java
index c1355b5ad..1e9d97a0a 100644
--- a/app/src/main/java/org/fdroid/fdroid/views/fragments/PreferencesFragment.java
+++ b/app/src/main/java/org/fdroid/fdroid/views/fragments/PreferencesFragment.java
@@ -166,7 +166,11 @@ public class PreferencesFragment extends PreferenceFragment
                 break;
 
             case Preferences.PREF_PRIVILEGED_INSTALLER:
-                checkSummary(key, R.string.system_installer_on);
+                // We may have removed this preference if it is not suitable to show the user. So lets check it is here first.
+                final CheckBoxPreference pref = (CheckBoxPreference) findPreference(Preferences.PREF_PRIVILEGED_INSTALLER);
+                if (pref != null) {
+                    checkSummary(key, R.string.system_installer_on);
+                }
                 break;
 
             case Preferences.PREF_ENABLE_PROXY:
@@ -214,23 +218,34 @@ public class PreferencesFragment extends PreferenceFragment
         boolean enabled = p.isPrivilegedInstallerEnabled();
         boolean installed = PrivilegedInstaller.isExtensionInstalledCorrectly(getActivity())
                 == PrivilegedInstaller.IS_EXTENSION_INSTALLED_YES;
-        pref.setEnabled(installed);
-        pref.setDefaultValue(installed);
-        pref.setChecked(enabled && installed);
 
-        pref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
-            @Override
-            public boolean onPreferenceClick(Preference preference) {
-                SharedPreferences.Editor editor = pref.getSharedPreferences().edit();
-                if (pref.isChecked()) {
-                    editor.remove(Preferences.PREF_PRIVILEGED_INSTALLER);
-                } else {
-                    editor.putBoolean(Preferences.PREF_PRIVILEGED_INSTALLER, false);
+        // On later versions of Android the privileged installer needs to be installed
+        // via flashing an update.zip or building into a rom. As such, if it isn't installed
+        // by the time the user boots, opens F-Droid, and views this settings page, then there
+        // is no benefit showing it to them (it will only be disabled and we can't offer any
+        // way to easily install from here.
+        if (Build.VERSION.SDK_INT > 19 && !installed) {
+            PreferenceCategory other = (PreferenceCategory) findPreference("pref_category_other");
+            other.removePreference(pref);
+        } else {
+            pref.setEnabled(installed);
+            pref.setDefaultValue(installed);
+            pref.setChecked(enabled && installed);
+
+            pref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
+                @Override
+                public boolean onPreferenceClick(Preference preference) {
+                    SharedPreferences.Editor editor = pref.getSharedPreferences().edit();
+                    if (pref.isChecked()) {
+                        editor.remove(Preferences.PREF_PRIVILEGED_INSTALLER);
+                    } else {
+                        editor.putBoolean(Preferences.PREF_PRIVILEGED_INSTALLER, false);
+                    }
+                    editor.apply();
+                    return true;
                 }
-                editor.apply();
-                return true;
-            }
-        });
+            });
+        }
     }
 
     private void initUpdatePrivilegedExtensionPreference() {