Merge "Remember the process that token was added for also for the services that are already running" into qt-dev

This commit is contained in:
Michal Karpinski
2019-05-23 10:58:00 +00:00
committed by Android (Google) Code Review

View File

@@ -551,12 +551,10 @@ final class ServiceRecord extends Binder implements ComponentName.WithComponentN
.removeAllowBackgroundActivityStartsToken(this); .removeAllowBackgroundActivityStartsToken(this);
ams.mHandler.removeCallbacks(mStartedWhitelistingBgActivityStartsCleanUp); ams.mHandler.removeCallbacks(mStartedWhitelistingBgActivityStartsCleanUp);
} }
mAppForStartedWhitelistingBgActivityStarts = null;
}
if (mHasStartedWhitelistingBgActivityStarts) {
// Make sure the cleanup callback knows about the new process.
mAppForStartedWhitelistingBgActivityStarts = _proc;
} }
// Make sure the cleanup callback knows about the new process.
mAppForStartedWhitelistingBgActivityStarts = mHasStartedWhitelistingBgActivityStarts
? _proc : null;
if (mHasStartedWhitelistingBgActivityStarts if (mHasStartedWhitelistingBgActivityStarts
|| mHasBindingWhitelistingBgActivityStarts) { || mHasBindingWhitelistingBgActivityStarts) {
_proc.addAllowBackgroundActivityStartsToken(this); _proc.addAllowBackgroundActivityStartsToken(this);
@@ -656,6 +654,9 @@ final class ServiceRecord extends Binder implements ComponentName.WithComponentN
*/ */
void whitelistBgActivityStartsOnServiceStart() { void whitelistBgActivityStartsOnServiceStart() {
setHasStartedWhitelistingBgActivityStarts(true); setHasStartedWhitelistingBgActivityStarts(true);
if (app != null) {
mAppForStartedWhitelistingBgActivityStarts = app;
}
// This callback is stateless, so we create it once when we first need it. // This callback is stateless, so we create it once when we first need it.
if (mStartedWhitelistingBgActivityStartsCleanUp == null) { if (mStartedWhitelistingBgActivityStartsCleanUp == null) {