Loading core/java/android/content/pm/PackageManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -574,6 +574,14 @@ public abstract class PackageManager { */ public static final int INSTALL_FAILED_VERSION_DOWNGRADE = -25; /** * Installation return code: this is passed to the {@link IPackageInstallObserver} by * {@link #installPackage(android.net.Uri, IPackageInstallObserver, int)} if * the package is from unknown sources but not trusted sources. * @hide */ public static final int INSTALL_FAILED_UNKNOWN_SOURCES = -26; /** * Installation parse return code: this is passed to the {@link IPackageInstallObserver} by * {@link #installPackage(android.net.Uri, IPackageInstallObserver, int)} Loading services/java/com/android/server/pm/PackageManagerService.java +12 −0 Original line number Diff line number Diff line Loading @@ -116,6 +116,7 @@ import android.os.SystemProperties; import android.os.UserHandle; import android.os.Environment.UserEnvironment; import android.os.UserManager; import android.provider.Settings.Global; import android.security.KeyStore; import android.security.SystemKeyStore; import android.text.TextUtils; Loading Loading @@ -6518,6 +6519,17 @@ public class PackageManagerService extends IPackageManager.Stub { filteredFlags = flags & ~PackageManager.INSTALL_FROM_ADB; } // Check if unknown sources allowed if (android.app.AppOpsManager.isStrictEnable() && ((filteredFlags & PackageManager.INSTALL_FROM_ADB) != 0) && Global.getInt(mContext.getContentResolver(), Global.INSTALL_NON_MARKET_APPS, 0) <= 0) { try { observer.packageInstalled("", PackageManager.INSTALL_FAILED_UNKNOWN_SOURCES); } catch (RemoteException re) { } return; } verificationParams.setInstallerUid(uid); final Message msg = mHandler.obtainMessage(INIT_COPY); Loading Loading
core/java/android/content/pm/PackageManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -574,6 +574,14 @@ public abstract class PackageManager { */ public static final int INSTALL_FAILED_VERSION_DOWNGRADE = -25; /** * Installation return code: this is passed to the {@link IPackageInstallObserver} by * {@link #installPackage(android.net.Uri, IPackageInstallObserver, int)} if * the package is from unknown sources but not trusted sources. * @hide */ public static final int INSTALL_FAILED_UNKNOWN_SOURCES = -26; /** * Installation parse return code: this is passed to the {@link IPackageInstallObserver} by * {@link #installPackage(android.net.Uri, IPackageInstallObserver, int)} Loading
services/java/com/android/server/pm/PackageManagerService.java +12 −0 Original line number Diff line number Diff line Loading @@ -116,6 +116,7 @@ import android.os.SystemProperties; import android.os.UserHandle; import android.os.Environment.UserEnvironment; import android.os.UserManager; import android.provider.Settings.Global; import android.security.KeyStore; import android.security.SystemKeyStore; import android.text.TextUtils; Loading Loading @@ -6518,6 +6519,17 @@ public class PackageManagerService extends IPackageManager.Stub { filteredFlags = flags & ~PackageManager.INSTALL_FROM_ADB; } // Check if unknown sources allowed if (android.app.AppOpsManager.isStrictEnable() && ((filteredFlags & PackageManager.INSTALL_FROM_ADB) != 0) && Global.getInt(mContext.getContentResolver(), Global.INSTALL_NON_MARKET_APPS, 0) <= 0) { try { observer.packageInstalled("", PackageManager.INSTALL_FAILED_UNKNOWN_SOURCES); } catch (RemoteException re) { } return; } verificationParams.setInstallerUid(uid); final Message msg = mHandler.obtainMessage(INIT_COPY); Loading