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

Commit e3eafd38 authored by Pedro Loureiro's avatar Pedro Loureiro Committed by Android (Google) Code Review
Browse files

Revert "Add SdkSandboxActivityAuthority"

Revert submission 25258913-sdkactivity-authority

Reason for revert: b/309424437

Reverted changes: /q/submissionid:25258913-sdkactivity-authority

Change-Id: Ibfb27602befae7d0f5577fdf4155696ae1686a16
parent eb0a09cb
Loading
Loading
Loading
Loading
+6 −10
Original line number Diff line number Diff line
@@ -56,7 +56,7 @@ import android.app.backup.BackupAnnotations.BackupDestination;
import android.app.backup.BackupAnnotations.OperationType;
import android.app.compat.CompatChanges;
import android.app.sdksandbox.sandboxactivity.ActivityContextInfo;
import android.app.sdksandbox.sandboxactivity.SdkSandboxActivityAuthority;
import android.app.sdksandbox.sandboxactivity.ActivityContextInfoProvider;
import android.app.servertransaction.ActivityLifecycleItem;
import android.app.servertransaction.ActivityLifecycleItem.LifecycleState;
import android.app.servertransaction.ActivityRelaunchItem;
@@ -2272,8 +2272,7 @@ public final class ActivityThread extends ClientTransactionHandler
                    case DUMP_HEAP: return "DUMP_HEAP";
                    case DUMP_ACTIVITY: return "DUMP_ACTIVITY";
                    case SET_CORE_SETTINGS: return "SET_CORE_SETTINGS";
                    case UPDATE_PACKAGE_COMPATIBILITY_INFO:
                        return "UPDATE_PACKAGE_COMPATIBILITY_INFO";
                    case UPDATE_PACKAGE_COMPATIBILITY_INFO: return "UPDATE_PACKAGE_COMPATIBILITY_INFO";
                    case DUMP_PROVIDER: return "DUMP_PROVIDER";
                    case UNSTABLE_PROVIDER_DIED: return "UNSTABLE_PROVIDER_DIED";
                    case REQUEST_ASSIST_CONTEXT_EXTRAS: return "REQUEST_ASSIST_CONTEXT_EXTRAS";
@@ -3777,10 +3776,8 @@ public final class ActivityThread extends ClientTransactionHandler
                    r.activityInfo.targetActivity);
        }

        boolean isSandboxActivityContext =
                sandboxActivitySdkBasedContext()
                        && SdkSandboxActivityAuthority.isSdkSandboxActivity(
                                mSystemContext, r.intent);
        boolean isSandboxActivityContext = sandboxActivitySdkBasedContext()
                && r.intent.isSandboxActivity(mSystemContext);
        boolean isSandboxedSdkContextUsed = false;
        ContextImpl activityBaseContext;
        if (isSandboxActivityContext) {
@@ -4025,12 +4022,11 @@ public final class ActivityThread extends ClientTransactionHandler
     */
    @Nullable
    private ContextImpl createBaseContextForSandboxActivity(@NonNull ActivityClientRecord r) {
        SdkSandboxActivityAuthority sdkSandboxActivityAuthority =
                SdkSandboxActivityAuthority.getInstance();
        ActivityContextInfoProvider contextInfoProvider = ActivityContextInfoProvider.getInstance();

        ActivityContextInfo contextInfo;
        try {
            contextInfo = sdkSandboxActivityAuthority.getActivityContextInfo(r.intent);
            contextInfo = contextInfoProvider.getActivityContextInfo(r.intent);
        } catch (IllegalArgumentException e) {
            Log.e(TAG, "Passed intent does not match an expected sandbox activity", e);
            return null;
+2 −6
Original line number Diff line number Diff line
@@ -12587,12 +12587,8 @@ public class Intent implements Parcelable, Cloneable {
        return (mFlags & FLAG_ACTIVITY_NEW_DOCUMENT) == FLAG_ACTIVITY_NEW_DOCUMENT;
    }
    /**
     * @deprecated Use {@link SdkSandboxActivityAuthority#isSdkSandboxActivity} instead.
     * Once the other API is finalized this method will be removed.
     * @hide
     */
    @Deprecated
    // TODO(b/299109198): Refactor into the {@link SdkSandboxManagerLocal}
    /** @hide */
    public boolean isSandboxActivity(@NonNull Context context) {
        if (mAction != null && mAction.equals(ACTION_START_SANDBOXED_ACTIVITY)) {
            return true;
+1 −10
Original line number Diff line number Diff line
@@ -125,7 +125,6 @@ import static com.android.server.wm.RootWindowContainer.MATCH_ATTACHED_TASK_OR_R
import static com.android.server.wm.Task.REPARENT_KEEP_ROOT_TASK_AT_FRONT;
import static com.android.server.wm.WindowManagerService.MY_PID;
import static com.android.server.wm.WindowManagerService.UPDATE_FOCUS_NORMAL;
import static com.android.sdksandbox.flags.Flags.sandboxActivitySdkBasedContext;

import android.Manifest;
import android.annotation.IntDef;
@@ -166,7 +165,6 @@ import android.app.assist.ActivityId;
import android.app.assist.AssistContent;
import android.app.assist.AssistStructure;
import android.app.compat.CompatChanges;
import android.app.sdksandbox.sandboxactivity.SdkSandboxActivityAuthority;
import android.app.usage.UsageStatsManagerInternal;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
@@ -1260,13 +1258,6 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
                true /*validateIncomingUser*/);
    }

    static boolean isSdkSandboxActivity(Context context, Intent intent) {
        return intent != null
                && (sandboxActivitySdkBasedContext()
                        ? SdkSandboxActivityAuthority.isSdkSandboxActivity(context, intent)
                        : intent.isSandboxActivity(context));
    }

    private int startActivityAsUser(IApplicationThread caller, String callingPackage,
            @Nullable String callingFeatureId, Intent intent, String resolvedType,
            IBinder resultTo, String resultWho, int requestCode, int startFlags,
@@ -1277,7 +1268,7 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub {
        assertPackageMatchesCallingUid(callingPackage);
        enforceNotIsolatedCaller("startActivityAsUser");

        if (isSdkSandboxActivity(mContext, intent)) {
        if (intent != null && intent.isSandboxActivity(mContext)) {
            SdkSandboxManagerLocal sdkSandboxManagerLocal = LocalManagerRegistry.getManager(
                    SdkSandboxManagerLocal.class);
            sdkSandboxManagerLocal.enforceAllowedToHostSandboxedActivity(
+1 −1
Original line number Diff line number Diff line
@@ -1089,7 +1089,7 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks {
            // Remove the process record so it won't be considered as alive.
            mService.mProcessNames.remove(wpc.mName, wpc.mUid);
            mService.mProcessMap.remove(wpc.getPid());
        } else if (ActivityTaskManagerService.isSdkSandboxActivity(mService.mContext, r.intent)) {
        } else if (r.intent.isSandboxActivity(mService.mContext)) {
            Slog.e(TAG, "Abort sandbox activity launching as no sandbox process to host it.");
            r.finishIfPossible("No sandbox process for the activity", false /* oomAdj */);
            r.launchFailed = true;