Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(442)

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/ChromeApplication.java

Issue 2142803002: Reland of Android: Add support for TraceEvent before the native library is loaded. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser; 5 package org.chromium.chrome.browser;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.content.Context; 8 import android.content.Context;
9 import android.content.Intent; 9 import android.content.Intent;
10 import android.content.SharedPreferences; 10 import android.content.SharedPreferences;
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
199 } 199 }
200 200
201 /** 201 /**
202 * This is called once per ChromeApplication instance, which get created per process 202 * This is called once per ChromeApplication instance, which get created per process
203 * (browser OR renderer). Don't stick anything in here that shouldn't be ca lled multiple times 203 * (browser OR renderer). Don't stick anything in here that shouldn't be ca lled multiple times
204 * during Chrome's lifetime. 204 * during Chrome's lifetime.
205 */ 205 */
206 @Override 206 @Override
207 public void onCreate() { 207 public void onCreate() {
208 UmaUtils.recordMainEntryPointTime(); 208 UmaUtils.recordMainEntryPointTime();
209 initCommandLine();
210 TraceEvent.maybeEnableEarlyTracing();
211 TraceEvent.begin("ChromeApplication.onCreate");
212
209 super.onCreate(); 213 super.onCreate();
210 ContextUtils.initApplicationContext(this); 214 ContextUtils.initApplicationContext(this);
211 215
212 UiUtils.setKeyboardShowingDelegate(new UiUtils.KeyboardShowingDelegate() { 216 UiUtils.setKeyboardShowingDelegate(new UiUtils.KeyboardShowingDelegate() {
213 @Override 217 @Override
214 public boolean disableKeyboardCheck(Context context, View view) { 218 public boolean disableKeyboardCheck(Context context, View view) {
215 Activity activity = null; 219 Activity activity = null;
216 if (context instanceof Activity) { 220 if (context instanceof Activity) {
217 activity = (Activity) context; 221 activity = (Activity) context;
218 } else if (view != null && view.getContext() instanceof Activity ) { 222 } else if (view != null && view.getContext() instanceof Activity ) {
(...skipping 18 matching lines...) Expand all
237 241
238 // Set minimum Tango log level. This sets an in-memory static field, and needs to be 242 // Set minimum Tango log level. This sets an in-memory static field, and needs to be
239 // set in the ApplicationContext instead of an activity, since Tango can be woken up 243 // set in the ApplicationContext instead of an activity, since Tango can be woken up
240 // by the system directly though messages from GCM. 244 // by the system directly though messages from GCM.
241 AndroidLogger.setMinimumAndroidLogLevel(Log.WARN); 245 AndroidLogger.setMinimumAndroidLogLevel(Log.WARN);
242 246
243 // Set up the identification generator for sync. The ID is actually gene rated 247 // Set up the identification generator for sync. The ID is actually gene rated
244 // in the SyncController constructor. 248 // in the SyncController constructor.
245 UniqueIdentificationGeneratorFactory.registerGenerator(SyncController.GE NERATOR_ID, 249 UniqueIdentificationGeneratorFactory.registerGenerator(SyncController.GE NERATOR_ID,
246 new UuidBasedUniqueIdentificationGenerator(this, SESSIONS_UUID_P REF_KEY), false); 250 new UuidBasedUniqueIdentificationGenerator(this, SESSIONS_UUID_P REF_KEY), false);
251 TraceEvent.end("ChromeApplication.onCreate");
247 } 252 }
248 253
249 /** 254 /**
250 * Each top-level activity (ChromeTabbedActivity, FullscreenActivity) should call this during 255 * Each top-level activity (ChromeTabbedActivity, FullscreenActivity) should call this during
251 * its onStart phase. When called for the first time, this marks the beginni ng of a foreground 256 * its onStart phase. When called for the first time, this marks the beginni ng of a foreground
252 * session and calls onForegroundSessionStart(). Subsequent calls are noops until 257 * session and calls onForegroundSessionStart(). Subsequent calls are noops until
253 * onForegroundSessionEnd() is called, to handle changing top-level Chrome a ctivities in one 258 * onForegroundSessionEnd() is called, to handle changing top-level Chrome a ctivities in one
254 * foreground session. 259 * foreground session.
255 */ 260 */
256 public void onStartWithNative() { 261 public void onStartWithNative() {
(...skipping 600 matching lines...) Expand 10 before | Expand all | Expand 10 after
857 * Caches flags that are needed by Activities that launch before the native library is loaded 862 * Caches flags that are needed by Activities that launch before the native library is loaded
858 * and stores them in SharedPreferences. Because this function is called dur ing launch after the 863 * and stores them in SharedPreferences. Because this function is called dur ing launch after the
859 * library has loaded, they won't affect the next launch until Chrome is res tarted. 864 * library has loaded, they won't affect the next launch until Chrome is res tarted.
860 */ 865 */
861 private void cacheNativeFlags() { 866 private void cacheNativeFlags() {
862 if (sIsFinishedCachingNativeFlags) return; 867 if (sIsFinishedCachingNativeFlags) return;
863 FeatureUtilities.cacheNativeFlags(this); 868 FeatureUtilities.cacheNativeFlags(this);
864 sIsFinishedCachingNativeFlags = true; 869 sIsFinishedCachingNativeFlags = true;
865 } 870 }
866 } 871 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698