Merge "Always restart apps if base.apk gets updated." into qt-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
1adea76f46
@@ -46,4 +46,5 @@ interface IPackageInstallerSession {
|
|||||||
int getParentSessionId();
|
int getParentSessionId();
|
||||||
|
|
||||||
boolean isStaged();
|
boolean isStaged();
|
||||||
|
int getInstallFlags();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1175,6 +1175,18 @@ public class PackageInstaller {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return Session's {@link SessionParams#installFlags}.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public int getInstallFlags() {
|
||||||
|
try {
|
||||||
|
return mSession.getInstallFlags();
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
throw e.rethrowFromSystemServer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the session ID of the multi-package session that this belongs to or
|
* @return the session ID of the multi-package session that this belongs to or
|
||||||
* {@link SessionInfo#INVALID_ID} if it does not belong to a multi-package session.
|
* {@link SessionInfo#INVALID_ID} if it does not belong to a multi-package session.
|
||||||
|
|||||||
@@ -91,6 +91,7 @@ import android.system.OsConstants;
|
|||||||
import android.system.StructStat;
|
import android.system.StructStat;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.ArraySet;
|
import android.util.ArraySet;
|
||||||
|
import android.util.EventLog;
|
||||||
import android.util.ExceptionUtils;
|
import android.util.ExceptionUtils;
|
||||||
import android.util.MathUtils;
|
import android.util.MathUtils;
|
||||||
import android.util.Slog;
|
import android.util.Slog;
|
||||||
@@ -1711,6 +1712,11 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
|
|||||||
resolveInheritedFile(baseDexMetadataFile);
|
resolveInheritedFile(baseDexMetadataFile);
|
||||||
}
|
}
|
||||||
baseApk = existingBase;
|
baseApk = existingBase;
|
||||||
|
} else if ((params.installFlags & PackageManager.INSTALL_DONT_KILL_APP) != 0) {
|
||||||
|
EventLog.writeEvent(0x534e4554, "219044664");
|
||||||
|
|
||||||
|
// Installing base.apk. Make sure the app is restarted.
|
||||||
|
params.setDontKillApp(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Inherit splits if not overridden
|
// Inherit splits if not overridden
|
||||||
@@ -2142,6 +2148,11 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub {
|
|||||||
return params.isStaged;
|
return params.isStaged;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getInstallFlags() {
|
||||||
|
return params.installFlags;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int[] getChildSessionIds() {
|
public int[] getChildSessionIds() {
|
||||||
final int[] childSessionIds = mChildSessionIds.copyKeys();
|
final int[] childSessionIds = mChildSessionIds.copyKeys();
|
||||||
|
|||||||
Reference in New Issue
Block a user