enable/disable dexopt for instant apps remotely
Change-Id: I997b8ae515f7bf2570edca4ed7ab4b46198148a5 Fixes: 62591398 Test: Manual; install instant app and see that it doesn't dexopt Test: Manua; update gservices flag, install instant app and see that it does dexopt
This commit is contained in:
@@ -9817,6 +9817,16 @@ public final class Settings {
|
||||
*/
|
||||
public static final String ENABLE_EPHEMERAL_FEATURE = "enable_ephemeral_feature";
|
||||
|
||||
/**
|
||||
* Toggle to enable/disable dexopt for instant applications. The default is for dexopt
|
||||
* to be disabled.
|
||||
* <p>
|
||||
* Type: int (0 to disable, 1 to enable)
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public static final String INSTANT_APP_DEXOPT_ENABLED = "instant_app_dexopt_enabled";
|
||||
|
||||
/**
|
||||
* The min period for caching installed instant apps in milliseconds.
|
||||
* <p>
|
||||
|
||||
@@ -18160,8 +18160,10 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
// step during installation. Instead, we'll take extra time the first time the
|
||||
// instant app starts. It's preferred to do it this way to provide continuous
|
||||
// progress to the user instead of mysteriously blocking somewhere in the
|
||||
// middle of running an instant app.
|
||||
if (!instantApp) {
|
||||
// middle of running an instant app. The default behaviour can be overridden
|
||||
// via gservices.
|
||||
if (!instantApp || Global.getInt(
|
||||
mContext.getContentResolver(), Global.INSTANT_APP_DEXOPT_ENABLED, 0) != 0) {
|
||||
Trace.traceBegin(TRACE_TAG_PACKAGE_MANAGER, "dexopt");
|
||||
// Do not run PackageDexOptimizer through the local performDexOpt
|
||||
// method because `pkg` may not be in `mPackages` yet.
|
||||
|
||||
Reference in New Issue
Block a user