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

Commit 8f7cd878 authored by Varun Shah's avatar Varun Shah Committed by Android (Google) Code Review
Browse files

Merge "Moved isAppForeground to ActivityManagerInternal."

parents cf3728a3 98c84e19
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -56,7 +56,6 @@ Landroid/app/IActivityManager$Stub$Proxy;->getConfiguration()Landroid/content/re
Landroid/app/IActivityManager$Stub$Proxy;->getLaunchedFromUid(Landroid/os/IBinder;)I
Landroid/app/IActivityManager$Stub$Proxy;->getLaunchedFromUid(Landroid/os/IBinder;)I
Landroid/app/IActivityManager$Stub$Proxy;->getProcessLimit()I
Landroid/app/IActivityManager$Stub$Proxy;->getProcessLimit()I
Landroid/app/IActivityManager$Stub$Proxy;->getProcessPss([I)[J
Landroid/app/IActivityManager$Stub$Proxy;->getProcessPss([I)[J
Landroid/app/IActivityManager$Stub$Proxy;->isAppForeground(I)Z
Landroid/app/IActivityManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
Landroid/app/IActivityManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
Landroid/app/IActivityManager$Stub$Proxy;->setActivityController(Landroid/app/IActivityController;Z)V
Landroid/app/IActivityManager$Stub$Proxy;->setActivityController(Landroid/app/IActivityController;Z)V
Landroid/app/IActivityManager$Stub$Proxy;->updatePersistentConfiguration(Landroid/content/res/Configuration;)V
Landroid/app/IActivityManager$Stub$Proxy;->updatePersistentConfiguration(Landroid/content/res/Configuration;)V
+3 −0
Original line number Original line Diff line number Diff line
@@ -314,4 +314,7 @@ public abstract class ActivityManagerInternal {


    /** Returns mount mode for process running with given pid */
    /** Returns mount mode for process running with given pid */
    public abstract int getStorageMountMode(int pid, int uid);
    public abstract int getStorageMountMode(int pid, int uid);

    /** Returns true if the given uid is the app in the foreground. */
    public abstract boolean isAppForeground(int uid);
}
}
+0 −1
Original line number Original line Diff line number Diff line
@@ -421,7 +421,6 @@ interface IActivityManager {
    void resizeDockedStack(in Rect dockedBounds, in Rect tempDockedTaskBounds,
    void resizeDockedStack(in Rect dockedBounds, in Rect tempDockedTaskBounds,
            in Rect tempDockedTaskInsetBounds,
            in Rect tempDockedTaskInsetBounds,
            in Rect tempOtherTaskBounds, in Rect tempOtherTaskInsetBounds);
            in Rect tempOtherTaskBounds, in Rect tempOtherTaskInsetBounds);
    boolean isAppForeground(int uid);
    void removeStack(int stackId);
    void removeStack(int stackId);
    void makePackageIdle(String packageName, int userId);
    void makePackageIdle(String packageName, int userId);
    int getMemoryTrimLevel();
    int getMemoryTrimLevel();
+10 −7
Original line number Original line Diff line number Diff line
@@ -39,6 +39,7 @@ import static com.android.server.backup.internal.BackupHandler.MSG_SCHEDULE_BACK
import android.annotation.Nullable;
import android.annotation.Nullable;
import android.annotation.UserIdInt;
import android.annotation.UserIdInt;
import android.app.ActivityManager;
import android.app.ActivityManager;
import android.app.ActivityManagerInternal;
import android.app.AlarmManager;
import android.app.AlarmManager;
import android.app.AppGlobals;
import android.app.AppGlobals;
import android.app.IActivityManager;
import android.app.IActivityManager;
@@ -103,6 +104,7 @@ import com.android.internal.util.DumpUtils;
import com.android.internal.util.Preconditions;
import com.android.internal.util.Preconditions;
import com.android.server.AppWidgetBackupBridge;
import com.android.server.AppWidgetBackupBridge;
import com.android.server.EventLogTags;
import com.android.server.EventLogTags;
import com.android.server.LocalServices;
import com.android.server.backup.fullbackup.FullBackupEntry;
import com.android.server.backup.fullbackup.FullBackupEntry;
import com.android.server.backup.fullbackup.PerformFullTransportBackupTask;
import com.android.server.backup.fullbackup.PerformFullTransportBackupTask;
import com.android.server.backup.internal.BackupHandler;
import com.android.server.backup.internal.BackupHandler;
@@ -247,10 +249,11 @@ public class UserBackupManagerService {
    private final TransportManager mTransportManager;
    private final TransportManager mTransportManager;
    private final HandlerThread mUserBackupThread;
    private final HandlerThread mUserBackupThread;


    private final Context mContext;
    private Context mContext;
    private final PackageManager mPackageManager;
    private PackageManager mPackageManager;
    private final IPackageManager mPackageManagerBinder;
    private IPackageManager mPackageManagerBinder;
    private final IActivityManager mActivityManager;
    private IActivityManager mActivityManager;
    private ActivityManagerInternal mActivityManagerInternal;
    private PowerManager mPowerManager;
    private PowerManager mPowerManager;
    private final AlarmManager mAlarmManager;
    private final AlarmManager mAlarmManager;
    private final IStorageManager mStorageManager;
    private final IStorageManager mStorageManager;
@@ -460,6 +463,7 @@ public class UserBackupManagerService {
        mPackageManager = context.getPackageManager();
        mPackageManager = context.getPackageManager();
        mPackageManagerBinder = AppGlobals.getPackageManager();
        mPackageManagerBinder = AppGlobals.getPackageManager();
        mActivityManager = ActivityManager.getService();
        mActivityManager = ActivityManager.getService();
        mActivityManagerInternal = LocalServices.getService(ActivityManagerInternal.class);


        mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        mAlarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        mPowerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
        mPowerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
@@ -2074,7 +2078,8 @@ public class UserBackupManagerService {


                        final int privFlags = appInfo.applicationInfo.privateFlags;
                        final int privFlags = appInfo.applicationInfo.privateFlags;
                        headBusy = (privFlags & PRIVATE_FLAG_BACKUP_IN_FOREGROUND) == 0
                        headBusy = (privFlags & PRIVATE_FLAG_BACKUP_IN_FOREGROUND) == 0
                                && mActivityManager.isAppForeground(appInfo.applicationInfo.uid);
                                && mActivityManagerInternal.isAppForeground(
                                        appInfo.applicationInfo.uid);


                        if (headBusy) {
                        if (headBusy) {
                            final long nextEligible = System.currentTimeMillis()
                            final long nextEligible = System.currentTimeMillis()
@@ -2097,8 +2102,6 @@ public class UserBackupManagerService {
                        // queue entirely and move on, but if there's nothing else in the queue
                        // queue entirely and move on, but if there's nothing else in the queue
                        // we should bail entirely.  headBusy cannot have been set to true yet.
                        // we should bail entirely.  headBusy cannot have been set to true yet.
                        runBackup = (mFullBackupQueue.size() > 1);
                        runBackup = (mFullBackupQueue.size() > 1);
                    } catch (RemoteException e) {
                        // Cannot happen; the Activity Manager is in the same process
                    }
                    }
                }
                }
            } while (headBusy);
            } while (headBusy);
+6 −10
Original line number Original line Diff line number Diff line
@@ -5329,16 +5329,7 @@ public class ActivityManagerService extends IActivityManager.Stub
        }
        }
    }
    }
    @Override
    private boolean isAppForeground(int uid) {
    public boolean isAppForeground(int uid) {
        int callerUid = Binder.getCallingUid();
        if (UserHandle.isCore(callerUid) || callerUid == uid) {
            return isAppForegroundInternal(uid);
        }
        return false;
    }
    private boolean isAppForegroundInternal(int uid) {
        synchronized (this) {
        synchronized (this) {
            UidRecord uidRec = mActiveUids.get(uid);
            UidRecord uidRec = mActiveUids.get(uid);
            if (uidRec == null || uidRec.idle) {
            if (uidRec == null || uidRec.idle) {
@@ -19694,6 +19685,11 @@ public class ActivityManagerService extends IActivityManager.Stub
                return pr == null ? Zygote.MOUNT_EXTERNAL_NONE : pr.mountMode;
                return pr == null ? Zygote.MOUNT_EXTERNAL_NONE : pr.mountMode;
            }
            }
        }
        }
        @Override
        public boolean isAppForeground(int uid) {
            return ActivityManagerService.this.isAppForeground(uid);
        }
    }
    }
    long inputDispatchingTimedOut(int pid, final boolean aboveSystem, String reason) {
    long inputDispatchingTimedOut(int pid, final boolean aboveSystem, String reason) {