Single-version search →
3 unchanged · 6 modified · 0 moved · 5 only in 17 · 5 only in 13

modified Same code location, different body

These chunks live at the same (file, symbol) in both versions but have different content hashes — so the code definitely changed between android-17.0.0_r1 and android-13.0.0_r84.

  1. frameworks/base/services/core/java/com/android/server/pm/PackageInstallerService.java PackageInstallerService.setPermissionsResult

    AOSP 17 android-17.0.0_r1

    PackageInstallerService.setPermissionsResult ·method ·java · first seen r1
    @android.annotation.EnforcePermission(android.Manifest.permission.INSTALL_PACKAGES)
        @Override
        public void setPermissionsResult(int sessionId, boolean accepted) {
            setPermissionsResult_e

    AOSP 13 android-13.0.0_r84

    PackageInstallerService.setPermissionsResult ·method ·java · first seen r1
    @Override
        public void setPermissionsResult(int sessionId, boolean accepted) {
            mContext.enforceCallingOrSelfPermission(android.Manifest.permission.INSTALL_PACKAGES, TAG);
    
            synchroni
  2. frameworks/base/packages/PackageInstaller/src/com/android/packageinstaller/PackageInstallerActivity.java PackageInstallerActivity.onActivityResult

    AOSP 17 android-17.0.0_r1

    PackageInstallerActivity.onActivityResult ·method ·java · first seen r1
    @Override
        public void onActivityResult(int request, int result, Intent data) {
            if (request == REQUEST_TRUST_EXTERNAL_SOURCE) {
                // Log the fact that the app is requesting an ins

    AOSP 13 android-13.0.0_r84

    PackageInstallerActivity.onActivityResult ·method ·java · first seen r1
    @Override
        public void onActivityResult(int request, int result, Intent data) {
            if (request == REQUEST_TRUST_EXTERNAL_SOURCE && result == RESULT_OK) {
                // The user has just allow
  3. frameworks/base/services/core/java/com/android/server/pm/PackageInstallerSession.java PackageInstallerSession.setPermissionsResult

    AOSP 17 android-17.0.0_r1

    PackageInstallerSession.setPermissionsResult ·method ·java · first seen r1
    void setPermissionsResult(boolean accepted) {
            if (!isSealed() && !isPreapprovalRequested()) {
                throw new SecurityException("Must be sealed to accept permissions");
            }
    
          

    AOSP 13 android-13.0.0_r84

    PackageInstallerSession.setPermissionsResult ·method ·java · first seen r1
    void setPermissionsResult(boolean accepted) {
            if (!isSealed()) {
                throw new SecurityException("Must be sealed to accept permissions");
            }
    
            PackageInstallerSession roo
  4. frameworks/base/services/core/java/com/android/server/pm/PackageInstallerSession.java PackageInstallerSession.computeUserActionRequirement

    AOSP 17 android-17.0.0_r1

    PackageInstallerSession.computeUserActionRequirement ·method ·java · first seen r1
    @UserActionRequirement
        private int computeUserActionRequirement() {
            final String packageName;
            final boolean hasDeviceAdminReceiver;
            synchronized (mLock) {
                if (m

    AOSP 13 android-13.0.0_r84

    PackageInstallerSession.computeUserActionRequirement ·method ·java · first seen r1
    @UserActionRequirement
        private int computeUserActionRequirement() {
            final String packageName;
            final boolean hasDeviceAdminReceiver;
            synchronized (mLock) {
                if (m
  5. frameworks/base/services/core/java/com/android/server/pm/PackageInstallerService.java PackageInstallerService.installExistingPackage

    AOSP 17 android-17.0.0_r1

    PackageInstallerService.installExistingPackage ·method ·java · first seen r1
    @Override
        public void installExistingPackage(String packageName, int installFlags, int installReason,
                IntentSender statusReceiver, int userId, List<String> allowListedPermissions) {
    
     

    AOSP 13 android-13.0.0_r84

    PackageInstallerService.installExistingPackage ·method ·java · first seen r1
    @Override
        public void installExistingPackage(String packageName, int installFlags, int installReason,
                IntentSender statusReceiver, int userId, List<String> allowListedPermissions) {
      
  6. frameworks/base/packages/PackageInstaller/AndroidManifest.xml manifest

    AOSP 17 android-17.0.0_r1

    manifest ·xml_root ·xml · first seen r1
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              package="com.android.packageinstaller">
    
        <original-package a

    AOSP 13 android-13.0.0_r84

    manifest ·xml_root ·xml · first seen r1
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
              package="com.android.packageinstaller">
    
        <original-package android:name="com.android.packageinstaller" />
    
        <uses-

only in 17 Removed or refactored away in 13

Matched the query in AOSP 17 (android-17.0.0_r1) but didn't appear in the top results for AOSP 13. They may have been removed, or refactored beyond the query's reach.

  1. PackageInstallerSession.isInstallerRequestingPermission· lines 1465–1483 ·java · AOSP 17
    private boolean isInstallerRequestingPermission(Computer snapshot, String permission) {
            if (getInstallSource() != null) {
                return false;
            }
            String installerPackageNam
  2. BackgroundInstallControlService.isInstaller· lines 584–594 ·java · AOSP 17
    private boolean isInstaller(String pkgName, int userId) {
            if (mInstallerForegroundTimeFrames.contains(userId, pkgName)) {
                return true;
            }
            return mPermissionManager.c
  3. InstallStart.isUidRequestingPermission· lines 274–294 ·java · AOSP 17
    private boolean isUidRequestingPermission(int uid, String permission) {
            final String[] packageNames = mPackageManager.getPackagesForUid(uid);
            if (packageNames == null) {
                re
  4. PackageInstallerService.isValidForInstallConstraints· lines 1742–1753 ·java · AOSP 17
    private boolean isValidForInstallConstraints(PackageStateInternal ps,
                String installerPackageName, int installerUid, String packageName) {
            final var snapshot = mPm.snapshotComputer
  5. InstallStart.onCreate· lines 64–272 ·java · AOSP 17
    @Override
        protected void onCreate(@Nullable Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    
            if (PackageUtil.isVersionTwoEnabled(this)) {
                Intent piaV2 

only in 13 New in 13 (or refactored from elsewhere)

Matched the query in AOSP 13 (android-13.0.0_r84) but didn't appear in the top results for AOSP 17. Likely added in this version, or refactored from older code that no longer matches the query.

  1. PermissionManagerServiceImpl.onPackageInstalledInternal· lines 4981–4994 ·java · AOSP 13 · first seen r1
    private void onPackageInstalledInternal(@NonNull AndroidPackage pkg, int previousAppId,
                @NonNull PermissionManagerServiceInternal.PackageInstalledParams params,
                @UserIdInt int[
  2. PermissionManagerServiceImpl.onPackageInstalled· lines 5228–5239 ·java · AOSP 13 · first seen r1
    @Override
        public void onPackageInstalled(@NonNull AndroidPackage pkg, int previousAppId,
                @NonNull PermissionManagerServiceInternal.PackageInstalledParams params,
                @UserIdInt
  3. PackageInstallerSession.handleInstall· lines 2129–2159 ·java · AOSP 13 · first seen r32
    @WorkerThread
        private void handleInstall() {
            if (isInstallerDeviceOwnerOrAffiliatedProfileOwner()) {
                DevicePolicyEventLogger
                        .createEvent(DevicePolicyEnums.
  4. PackageInstaller.installExistingPackage· lines 780–794 ·java · AOSP 13 · first seen r1
    @RequiresPermission(allOf = {
                Manifest.permission.INSTALL_PACKAGES,
                Manifest.permission.INSTALL_EXISTING_PACKAGES})
        public void installExistingPackage(@NonNull String packa
  5. SessionCleanUpTest.testSessionCleanUp_Single_NoPermission· lines 169–185 ·java · AOSP 13 · first seen r1
    @Test
        public void testSessionCleanUp_Single_NoPermission() throws Exception {
            int sessionId = Install.single(TestApp.A1)
                    .addInstallFlags(INSTALL_FORCE_PERMISSION_PROMPT).c

unchanged Byte-identical across both versions

These chunks share the same content hash (chunk_id) in both versions — their bodies are byte-for-byte identical. The match is guaranteed by construction, not inferred from a similarity heuristic.

Want this comparison inside Claude Code, Cursor, or Cline? MCP setup →