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

Commit f85aa39a authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Merge cherrypicks of ['googleplex-android-review.googlesource.com/35461383'] into 25Q4-release.

Change-Id: I55d8f6bcb652a0e69a5a7285ce3bb51a37d6dee1
parents 23464e26 09533d47
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -9729,21 +9729,6 @@ package android.app.people {
}
package android.app.privatecompute {
  @FlaggedApi("android.app.privatecompute.flags.enable_pcc_framework_support") public final class PccEntity implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public String getPackageName();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.app.privatecompute.PccEntity> CREATOR;
  }
  @FlaggedApi("android.app.privatecompute.flags.enable_pcc_framework_support") public final class PccSandboxManager {
    method @NonNull public java.util.List<android.app.privatecompute.PccEntity> getPccEntities();
  }
}
package android.app.slice {
  @Deprecated public final class Slice implements android.os.Parcelable {
@@ -11353,7 +11338,6 @@ package android.content {
    field public static final String NOTIFICATION_SERVICE = "notification";
    field public static final String NSD_SERVICE = "servicediscovery";
    field public static final String OVERLAY_SERVICE = "overlay";
    field @FlaggedApi("android.app.privatecompute.flags.enable_pcc_framework_support") public static final String PCC_SANDBOX_SERVICE = "pcc_sandbox";
    field public static final String PEOPLE_SERVICE = "people";
    field public static final String PERFORMANCE_HINT_SERVICE = "performance_hint";
    field public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block";
+0 −17
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
package android.app;

import static android.app.appfunctions.flags.Flags.enableAppFunctionManager;
import static android.app.privatecompute.flags.Flags.enablePccFrameworkSupport;
import static android.app.userrecovery.flags.Flags.enableUserRecoveryManager;
import static android.hardware.serial.flags.Flags.enableWiredSerialApi;
import static android.provider.flags.Flags.newStoragePublicApi;
@@ -49,8 +48,6 @@ import android.app.job.JobSchedulerFrameworkInitializer;
import android.app.ondeviceintelligence.OnDeviceIntelligenceFrameworkInitializer;
import android.app.people.PeopleManager;
import android.app.prediction.AppPredictionManager;
import android.app.privatecompute.IPccSandboxManager;
import android.app.privatecompute.PccSandboxManager;
import android.app.role.RoleFrameworkInitializer;
import android.app.sdksandbox.SdkSandboxManagerFrameworkInitializer;
import android.app.search.SearchUiManager;
@@ -1021,20 +1018,6 @@ public final class SystemServiceRegistry {
                    });
        }

        if (enablePccFrameworkSupport()) {
            registerService(Context.PCC_SANDBOX_SERVICE, PccSandboxManager.class,
                    new CachedServiceFetcher<PccSandboxManager>() {
                        @Override
                        public PccSandboxManager createService(ContextImpl ctx)
                                throws ServiceNotFoundException {
                            IPccSandboxManager service;
                            service = IPccSandboxManager.Stub.asInterface(
                                    ServiceManager.getServiceOrThrow(Context.PCC_SANDBOX_SERVICE));
                            return new PccSandboxManager(service, ctx.getOuterContext());
                        }
                    });
        }

      if (enableUserRecoveryManager()) {
            registerService(Context.USER_RECOVERY_SERVICE, UserRecoveryManager.class,
                    new CachedServiceFetcher<>() {
+0 −33
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.app.privatecompute;

import android.app.privatecompute.PccEntity;

/**
 * Binder interface for the PccSandboxManagerService.
 *
 * @hide
 */
interface IPccSandboxManager {
    /**
     * Returns a list of entities that are configured to run in the PCC sandbox and are
     * visible to the calling application.
     */
    @RequiresNoPermission
    List<PccEntity> getPccEntities();
}
+0 −20
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.app.privatecompute;

/** @hide */
parcelable PccEntity;
+0 −87
Original line number Diff line number Diff line
/*
 * Copyright (C) 2025 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.app.privatecompute;

import static android.app.privatecompute.flags.Flags.FLAG_ENABLE_PCC_FRAMEWORK_SUPPORT;

import android.annotation.FlaggedApi;
import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;

/**
 * Represents an entity that is configured to run in the PCC (Private Compute Core) sandbox.
 *
 * <p>A PCC entity can be an entire application (a package) or an individual component within an
 * application (such as a {@link android.app.Service}) that is designated to run in the sandbox.
 *
 * @see PccSandboxManager#getPccEntities()
 */
@FlaggedApi(FLAG_ENABLE_PCC_FRAMEWORK_SUPPORT)
public final class PccEntity implements Parcelable {

    private final String mPackageName;

    /**
     * Creates a new instance representing a PCC entity.
     *
     * @param packageName The package name of the application containing the PCC entity.
     * @hide
     */
    public PccEntity(@NonNull String packageName) {
        mPackageName = packageName;
    }

    private PccEntity(Parcel in) {
        mPackageName = in.readString8();
    }

    /**
     * Returns the package name of the application that contains this PCC entity.
     *
     * @return The package name of the application.
     */
    public @NonNull String getPackageName() {
        return mPackageName;
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(@NonNull Parcel dest, int flags) {
        dest.writeString8(mPackageName);
    }

    /**
     * @see Parcelable.Creator
     */
    @NonNull
    public static final Creator<PccEntity> CREATOR = new Creator<PccEntity>() {
        @Override
        public PccEntity createFromParcel(Parcel in) {
            return new PccEntity(in);
        }

        @Override
        public PccEntity[] newArray(int size) {
            return new PccEntity[size];
        }
    };
}
Loading