1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org.chromium.android_webview.shell;
7 import android.app.Application;
8 import android.os.Debug;
9 import android.util.Log;
11 import org.chromium.android_webview.AwBrowserProcess;
12 import org.chromium.base.BaseSwitches;
13 import org.chromium.base.CommandLine;
14 import org.chromium.base.TraceEvent;
15 import org.chromium.content.browser.ResourceExtractor;
18 * The android_webview shell Application subclass.
20 public class AwShellApplication extends Application {
22 private static final String TAG = "AwShellApplication";
23 /** The minimum set of .pak files the test runner needs. */
24 private static final String[] MANDATORY_PAKS = { "icudtl.dat" };
27 public void onCreate() {
30 AwShellResourceProvider.registerResources(this);
32 CommandLine.initFromFile("/data/local/tmp/android-webview-command-line");
34 if (CommandLine.getInstance().hasSwitch(BaseSwitches.WAIT_FOR_JAVA_DEBUGGER)) {
35 Log.e(TAG, "Waiting for Java debugger to connect...");
36 Debug.waitForDebugger();
37 Log.e(TAG, "Java debugger connected. Resuming execution.");
40 ResourceExtractor.setMandatoryPaksToExtract(MANDATORY_PAKS);
41 ResourceExtractor.setExtractImplicitLocaleForTesting(false);
42 AwBrowserProcess.loadLibrary();
44 if (CommandLine.getInstance().hasSwitch(AwShellSwitches.ENABLE_ATRACE)) {
45 Log.e(TAG, "Enabling Android trace.");
46 TraceEvent.setATraceEnabled(true);