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

Commit b83169cf authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "package-manager-native: Add aidl for package change event and...

Merge "package-manager-native: Add aidl for package change event and observer." into rvc-dev am: 576ad9fe

Change-Id: Ia2191160d8bf162f2ce5dbc1d2f5c9465a344aeb
parents 62434d49 576ad9fe
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -158,7 +158,9 @@ cc_library {
filegroup {
    name: "libbinder_aidl",
    srcs: [
        "aidl/android/content/pm/IPackageChangeObserver.aidl",
        "aidl/android/content/pm/IPackageManagerNative.aidl",
        "aidl/android/content/pm/PackageChangeEvent.aidl",
        "aidl/android/os/IClientCallback.aidl",
        "aidl/android/os/IServiceCallback.aidl",
        "aidl/android/os/IServiceManager.aidl",
+28 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.content.pm;

import android.content.pm.PackageChangeEvent;

/**
 * This is a non-blocking notification when a package has changed.
 *
 * @hide
 */
oneway interface IPackageChangeObserver {
  void onPackageChanged(in PackageChangeEvent event);
}
+11 −0
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@

package android.content.pm;

import android.content.pm.IPackageChangeObserver;

/**
 * Parallel implementation of certain {@link PackageManager} APIs that need to
 * be exposed to native code.
@@ -90,4 +92,13 @@ interface IPackageManagerNative {

    /* Returns the names of all packages. */
    @utf8InCpp String[] getAllPackages();

    /** Register an extra package change observer to receive the multi-cast. */
    void registerPackageChangeObserver(in IPackageChangeObserver observer);

    /**
     * Unregister an existing package change observer.
     * This does nothing if this observer was not already registered.
     */
    void unregisterPackageChangeObserver(in IPackageChangeObserver observer);
}
+32 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.content.pm;

/**
 * This event is designed for notification to native code listener about
 * any changes on a package including update, deletion and etc.
 *
 * @hide
 */
parcelable PackageChangeEvent {
  @utf8InCpp String packageName;
  long version;
  long lastUpdateTimeMillis;
  boolean newInstalled;
  boolean dataRemoved;
  boolean isDeleted;
}