Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5ce9835c authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 7283897 from 4d139ff9 to sc-release

Change-Id: I0c8b1ea71ae3e0f3719ac2aec4432772a2f4ca0e
parents dd51c9f1 4d139ff9
Loading
Loading
Loading
Loading
+61 −33
Original line number Diff line number Diff line
@@ -123,13 +123,19 @@ droidstubs {
    },
    dists: [
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/public/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/public/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
@@ -137,20 +143,17 @@ droidstubs {
    ],
}

priv_apps =
    " --show-annotation android.annotation.SystemApi\\(" +
priv_apps = " --show-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
    "\\)"

priv_apps_in_stubs =
    " --show-for-stub-purposes-annotation android.annotation.SystemApi\\(" +
priv_apps_in_stubs = " --show-for-stub-purposes-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
    "\\)"

test = " --show-annotation android.annotation.TestApi"

module_libs =
    " --show-annotation android.annotation.SystemApi\\(" +
module_libs = " --show-annotation android.annotation.SystemApi\\(" +
    "client=android.annotation.SystemApi.Client.MODULE_LIBRARIES" +
    "\\)"

@@ -166,7 +169,7 @@ droidstubs {
        last_released: {
            api_file: ":android-non-updatable.api.system.latest",
            removed_api_file: ":android-non-updatable-removed.api.system.latest",
            baseline_file: ":android-non-updatable-incompatibilities.api.system.latest"
            baseline_file: ":android-non-updatable-incompatibilities.api.system.latest",
        },
        api_lint: {
            enabled: true,
@@ -176,13 +179,19 @@ droidstubs {
    },
    dists: [
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/system/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/system/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
@@ -206,25 +215,37 @@ droidstubs {
    },
    dists: [
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/test/api",
            dest: "android.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/test/api",
            dest: "removed.txt",
            tag: ".removed-api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/test/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/test/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
@@ -252,13 +273,19 @@ droidstubs {
    },
    dists: [
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/module-lib/api",
            dest: "android-non-updatable.txt",
            tag: ".api.txt",
        },
        {
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            dir: "apistubs/android/module-lib/api",
            dest: "android-non-updatable-removed.txt",
            tag: ".removed-api.txt",
@@ -318,10 +345,13 @@ java_defaults {
    java_version: "1.8",
    compile_dex: true,
    dist: {
        targets: ["sdk", "win_sdk"],
        targets: [
            "sdk",
            "win_sdk",
        ],
        tag: ".jar",
        dest: "android-non-updatable.jar",
    }
    },
}

java_library_static {
@@ -380,7 +410,10 @@ java_defaults {
java_defaults {
    name: "android_stubs_dists_default",
    dist: {
        targets: ["sdk", "win_sdk"],
        targets: [
            "sdk",
            "win_sdk",
        ],
        tag: ".jar",
        dest: "android.jar",
    },
@@ -411,7 +444,10 @@ java_library_static {
    dists: [
        {
            // Legacy dist path
            targets: ["sdk", "win_sdk"],
            targets: [
                "sdk",
                "win_sdk",
            ],
            tag: ".jar",
            dest: "android_system.jar",
        },
@@ -433,14 +469,6 @@ java_library_static {
    dist: {
        dir: "apistubs/android/test",
    },
    dists: [
        {
            // Legacy dist path
            targets: ["sdk", "win_sdk"],
            tag: ".jar",
            dest: "android_test.jar",
        },
    ],
}

java_library_static {
+50 −6
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package com.android.server.appsearch;

import static android.app.appsearch.AppSearchResult.throwableToFailedResult;
import static android.os.Process.INVALID_UID;
import static android.os.UserHandle.USER_NULL;

import android.annotation.ElapsedRealtimeLong;
@@ -36,6 +37,7 @@ import android.app.appsearch.SearchResultPage;
import android.app.appsearch.SearchSpec;
import android.app.appsearch.SetSchemaResponse;
import android.app.appsearch.StorageInfo;
import android.app.appsearch.exceptions.AppSearchException;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -52,7 +54,6 @@ import android.os.UserManager;
import android.util.ArrayMap;
import android.util.ArraySet;
import android.util.Log;
import android.util.Slog;

import com.android.internal.annotations.GuardedBy;
import com.android.internal.util.Preconditions;
@@ -120,6 +121,14 @@ public class AppSearchManagerService extends SystemService {
        mContext.registerReceiverAsUser(new UserActionReceiver(), UserHandle.ALL,
                new IntentFilter(Intent.ACTION_USER_REMOVED), /*broadcastPermission=*/ null,
                /*scheduler=*/ null);

        IntentFilter packageChangedFilter = new IntentFilter();
        packageChangedFilter.addAction(Intent.ACTION_PACKAGE_FULLY_REMOVED);
        packageChangedFilter.addAction(Intent.ACTION_PACKAGE_DATA_CLEARED);
        packageChangedFilter.addDataScheme("package");
        mContext.registerReceiverAsUser(new PackageChangedReceiver(), UserHandle.ALL,
                packageChangedFilter, /*broadcastPermission=*/ null,
                /*scheduler=*/ null);
    }

    private class UserActionReceiver extends BroadcastReceiver {
@@ -127,15 +136,15 @@ public class AppSearchManagerService extends SystemService {
        public void onReceive(@NonNull Context context, @NonNull Intent intent) {
            switch (intent.getAction()) {
                case Intent.ACTION_USER_REMOVED:
                    final int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, USER_NULL);
                    int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, USER_NULL);
                    if (userId == USER_NULL) {
                        Slog.e(TAG, "userId is missing in the intent: " + intent);
                        Log.e(TAG, "userId is missing in the intent: " + intent);
                        return;
                    }
                    handleUserRemoved(userId);
                    break;
                default:
                    Slog.e(TAG, "Received unknown intent: " + intent);
                    Log.e(TAG, "Received unknown intent: " + intent);
            }
        }
    }
@@ -155,9 +164,44 @@ public class AppSearchManagerService extends SystemService {
        try {
            mImplInstanceManager.removeAppSearchImplForUser(userId);
            mLoggerInstanceManager.removePlatformLoggerForUser(userId);
            Slog.i(TAG, "Removed AppSearchImpl instance for user: " + userId);
            Log.i(TAG, "Removed AppSearchImpl instance for user: " + userId);
        } catch (Throwable t) {
            Slog.e(TAG, "Unable to remove data for user: " + userId, t);
            Log.e(TAG, "Unable to remove data for user: " + userId, t);
        }
    }

    private class PackageChangedReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(@NonNull Context context, @NonNull Intent intent) {
            switch (intent.getAction()) {
                case Intent.ACTION_PACKAGE_FULLY_REMOVED:
                case Intent.ACTION_PACKAGE_DATA_CLEARED:
                    String packageName = intent.getData().getSchemeSpecificPart();
                    if (packageName == null) {
                        Log.e(TAG, "Package name is missing in the intent: " + intent);
                        return;
                    }
                    int uid = intent.getIntExtra(Intent.EXTRA_UID, INVALID_UID);
                    if (uid == INVALID_UID) {
                        Log.e(TAG, "uid is missing in the intent: " + intent);
                        return;
                    }
                    handlePackageRemoved(packageName, uid);
                    break;
                default:
                    Log.e(TAG, "Received unknown intent: " + intent);
            }
        }
    }

    private void handlePackageRemoved(String packageName, int uid) {
        int userId = UserHandle.getUserId(uid);
        try {
            AppSearchImpl impl = mImplInstanceManager.getOrCreateAppSearchImpl(mContext, userId);
            //TODO(b/145759910) clear visibility setting for package.
            impl.clearPackageData(packageName);
        } catch (AppSearchException e) {
            Log.e(TAG, "Unable to remove data for package: " + packageName, e);
        }
    }

+1 −1
Original line number Diff line number Diff line
@@ -26,8 +26,8 @@ import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;
import android.util.Base64;
import android.util.IndentingPrintWriter;

import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.Preconditions;
import com.android.internal.util.XmlUtils;

+1 −1
Original line number Diff line number Diff line
@@ -37,9 +37,9 @@ import android.permission.PermissionManager;
import android.util.ArraySet;
import android.util.Base64;
import android.util.DebugUtils;
import android.util.IndentingPrintWriter;
import android.util.Slog;

import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.XmlUtils;

import org.xmlpull.v1.XmlPullParser;
+180 −64

File changed.

Preview size limit exceeded, changes collapsed.

Loading