diff options
| author | Sergio Giro <sgiro@google.com> | 2016-05-24 12:06:25 +0000 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2016-05-24 12:06:25 +0000 |
| commit | 163f8a2e9132b60f86f28a352ded1db6a38d367e (patch) | |
| tree | 40970ae8ee8fe0d6d8caedfef83cc82d173d4c7c /core/java | |
| parent | f55c9f7aa64660712242705d4e5e89e2191bbf69 (diff) | |
| parent | 393b67d65fdbf4565cbec2f40fcabaaf87143dfd (diff) | |
Merge "ZygoteInit: install AndroidKeyStoreProvider in the Zygote"
am: 393b67d65f
* commit '393b67d65fdbf4565cbec2f40fcabaaf87143dfd':
ZygoteInit: install AndroidKeyStoreProvider in the Zygote
Change-Id: Idc8e1ca4ae2160285fe56995290c241c3a7288f2
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/app/ActivityThread.java | 3 | ||||
| -rw-r--r-- | core/java/com/android/internal/os/ZygoteInit.java | 16 |
2 files changed, 14 insertions, 5 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 5fb3635d73f1..0386cff9edea 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -98,7 +98,6 @@ import android.view.Window; import android.view.WindowManager; import android.view.WindowManagerGlobal; import android.renderscript.RenderScriptCacheDir; -import android.security.keystore.AndroidKeyStoreProvider; import android.system.Os; import android.system.OsConstants; import android.system.ErrnoException; @@ -5461,8 +5460,6 @@ public final class ActivityThread { // Set the reporter for event logging in libcore EventLogger.setReporter(new EventLoggingReporter()); - AndroidKeyStoreProvider.install(); - // Make sure TrustedCertificateStore looks in the right place for CA certificates final File configDir = Environment.getUserConfigDirectory(UserHandle.myUserId()); TrustedCertificateStore.setDefaultUserDirectory(configDir); diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java index 83ffb54af583..8c6653d1e3f0 100644 --- a/core/java/com/android/internal/os/ZygoteInit.java +++ b/core/java/com/android/internal/os/ZygoteInit.java @@ -31,6 +31,7 @@ import android.os.Process; import android.os.SystemClock; import android.os.SystemProperties; import android.os.Trace; +import android.security.keystore.AndroidKeyStoreProvider; import android.system.ErrnoException; import android.system.Os; import android.system.OsConstants; @@ -247,7 +248,7 @@ public class ZygoteInit { } /** - * Warm up the providers that are already registered. + * Register AndroidKeyStoreProvider and warm up the providers that are already registered. * * By doing it here we avoid that each app does it when requesting a service from the * provider for the first time. @@ -255,12 +256,23 @@ public class ZygoteInit { private static void warmUpJcaProviders() { long startTime = SystemClock.uptimeMillis(); Trace.traceBegin( + Trace.TRACE_TAG_DALVIK, "Starting installation of AndroidKeyStoreProvider"); + // AndroidKeyStoreProvider.install() manipulates the list of JCA providers to insert + // preferred providers. Note this is not done via security.properties as the JCA providers + // are not on the classpath in the case of, for example, raw dalvikvm runtimes. + AndroidKeyStoreProvider.install(); + Log.i(TAG, "Installed AndroidKeyStoreProvider in " + + (SystemClock.uptimeMillis() - startTime) + "ms."); + Trace.traceEnd(Trace.TRACE_TAG_DALVIK); + + startTime = SystemClock.uptimeMillis(); + Trace.traceBegin( Trace.TRACE_TAG_DALVIK, "Starting warm up of JCA providers"); for (Provider p : Security.getProviders()) { p.warmUpServiceProvision(); } Log.i(TAG, "Warmed up JCA providers in " - + (SystemClock.uptimeMillis()-startTime) + "ms."); + + (SystemClock.uptimeMillis() - startTime) + "ms."); Trace.traceEnd(Trace.TRACE_TAG_DALVIK); } |
