Merge "enable/disable dexopt for instant apps remotely" into oc-dev

am: 5d969b9862

Change-Id: Ica29f01779c2bb504d682a2b457f861264cc00b0
This commit is contained in:
Todd Kennedy
2017-06-16 18:19:45 +00:00
committed by android-build-merger
2 changed files with 14 additions and 2 deletions

View File

@@ -9829,6 +9829,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>

View File

@@ -18113,8 +18113,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.