summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorjbudorick <jbudorick@chromium.org>2015-08-25 10:42:32 -0700
committerCommit bot <commit-bot@chromium.org>2015-08-25 17:43:38 +0000
commit6daf3a522276748b2f69144f63db76a62a30d014 (patch)
tree4129dd9617817fd10ddd33634c21aa83131bd6cc /base
parent48b4fba870ec20212e451e95a841cab89e6ea121 (diff)
downloadchromium_src-6daf3a522276748b2f69144f63db76a62a30d014.zip
chromium_src-6daf3a522276748b2f69144f63db76a62a30d014.tar.gz
chromium_src-6daf3a522276748b2f69144f63db76a62a30d014.tar.bz2
Revert of [Android] Add gyp support for multidex. (patchset #12 id:220001 of https://codereview.chromium.org/1278573002/ )
Reason for revert: Somehow broke compilation on the main waterfall: https://build.chromium.org/p/chromium/builders/Android/builds/45388 Original issue's description: > [Android] Add gyp support for multidex. > > Note that this does not enable multidex builds yet. > > BUG=272790 > > Committed: https://crrev.com/e40294eca50d57360a2bb0718adcd5cde7810fbd > Cr-Commit-Position: refs/heads/master@{#345357} TBR=agrieve@chromium.org,cjhopman@chromium.org,mmenke@chromium.org,thakis@chromium.org,yfriedman@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=272790 Review URL: https://codereview.chromium.org/1315833007 Cr-Commit-Position: refs/heads/master@{#345370}
Diffstat (limited to 'base')
-rw-r--r--base/BUILD.gn20
-rw-r--r--base/android/java/src/org/chromium/base/BaseChromiumApplication.java11
-rw-r--r--base/android/java/src/org/chromium/base/annotations/MainDex.java21
-rw-r--r--base/android/java/src/org/chromium/base/multidex/ChromiumMultiDex.java56
-rw-r--r--base/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java7
-rw-r--r--base/base.gyp19
-rw-r--r--base/test/android/javatests/src/org/chromium/base/test/BaseInstrumentationTestRunner.java8
-rw-r--r--base/test/android/junit/src/org/chromium/base/test/shadows/ShadowMultiDex.java21
8 files changed, 3 insertions, 160 deletions
diff --git a/base/BUILD.gn b/base/BUILD.gn
index a4e5a5c..b6fb63e 100644
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -1591,7 +1591,6 @@ if (is_android) {
]
deps = [
- "//third_party/android_tools:android_support_multidex_java",
"//third_party/jsr-305:jsr_305_javalib",
]
@@ -1623,29 +1622,12 @@ if (is_android) {
DEPRECATED_java_in_dir = "test/android/javatests/src"
}
- # TODO(jbudorick): Remove this once we roll to robolectric 3.0 and pull
- # in the multidex shadow library. crbug.com/522043
- # GYP: //base.gyp:base_junit_test_support
- java_library("base_junit_test_support") {
- testonly = true
- java_files = [ "test/android/junit/src/org/chromium/base/test/shadows/ShadowMultiDex.java" ]
- deps = [
- "//third_party/android_tools:android_support_multidex_java",
- "//third_party/robolectric:android-all-4.3_r2-robolectric-0",
- "//third_party/robolectric:robolectric_java",
- ]
- }
-
# GYP: //base.gyp:base_junit_tests
junit_binary("base_junit_tests") {
- java_files = [
- "android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java",
- "android/junit/src/org/chromium/base/LogTest.java",
- ]
+ java_files = [ "android/junit/src/org/chromium/base/LogTest.java" ]
deps = [
":base_java",
":base_java_test_support",
- ":base_junit_test_support",
]
}
diff --git a/base/android/java/src/org/chromium/base/BaseChromiumApplication.java b/base/android/java/src/org/chromium/base/BaseChromiumApplication.java
index 6d73c8fe..d7c7b05 100644
--- a/base/android/java/src/org/chromium/base/BaseChromiumApplication.java
+++ b/base/android/java/src/org/chromium/base/BaseChromiumApplication.java
@@ -11,8 +11,6 @@ import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Window;
-import org.chromium.base.multidex.ChromiumMultiDex;
-
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -22,15 +20,6 @@ import java.lang.reflect.Proxy;
* Basic application functionality that should be shared among all browser applications.
*/
public class BaseChromiumApplication extends Application {
-
- private static final String TAG = "cr.base";
-
- @Override
- protected void attachBaseContext(Context base) {
- super.attachBaseContext(base);
- ChromiumMultiDex.install(this);
- }
-
/**
* Interface to be implemented by listeners for window focus events.
*/
diff --git a/base/android/java/src/org/chromium/base/annotations/MainDex.java b/base/android/java/src/org/chromium/base/annotations/MainDex.java
deleted file mode 100644
index 0b35ade..0000000
--- a/base/android/java/src/org/chromium/base/annotations/MainDex.java
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.base.annotations;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * An annotation that signals that a class should be kept in the main dex file.
- *
- * This generally means it's used by renderer processes, which can't load secondary dexes
- * on K and below.
- */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.CLASS)
-public @interface MainDex {
-}
diff --git a/base/android/java/src/org/chromium/base/multidex/ChromiumMultiDex.java b/base/android/java/src/org/chromium/base/multidex/ChromiumMultiDex.java
deleted file mode 100644
index 6ed9369..0000000
--- a/base/android/java/src/org/chromium/base/multidex/ChromiumMultiDex.java
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.base.multidex;
-
-import android.content.Context;
-import android.os.Build;
-import android.os.Process;
-import android.support.multidex.MultiDex;
-
-import org.chromium.base.Log;
-
-import java.lang.reflect.InvocationTargetException;
-
-/**
- * Performs multidex installation for non-isolated processes.
- */
-public class ChromiumMultiDex {
-
- private static final String TAG = "cr.base.multidex";
-
- /**
- * Installs secondary dexes if possible.
- *
- * Isolated processes (e.g. renderer processes) can't load secondary dex files on
- * K and below, so we don't even try in that case.
- *
- * @param context The application context.
- */
- public static void install(Context context) {
- try {
- // TODO(jbudorick): Back out this version check once support for K & below works.
- // http://crbug.com/512357
- if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP && processIsIsolated()) {
- Log.i(TAG, "Skipping multidex installation: inside isolated process.");
- } else {
- MultiDex.install(context);
- Log.i(TAG, "Completed multidex installation.");
- }
- } catch (NoSuchMethodException e) {
- Log.wtf(TAG, "Failed multidex installation", e);
- } catch (IllegalAccessException e) {
- Log.wtf(TAG, "Failed multidex installation", e);
- } catch (InvocationTargetException e) {
- Log.wtf(TAG, "Failed multidex installation", e);
- }
- }
-
- // Calls Process.isIsolated, a private Android API.
- private static boolean processIsIsolated()
- throws NoSuchMethodException, IllegalAccessException, InvocationTargetException {
- return (boolean) Process.class.getMethod("isIsolated").invoke(null);
- }
-
-}
diff --git a/base/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java b/base/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java
index 239de67..d3441f7 100644
--- a/base/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java
+++ b/base/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java
@@ -13,7 +13,6 @@ import android.view.KeyEvent;
import junit.framework.Assert;
import org.chromium.base.BaseChromiumApplication.WindowFocusChangedListener;
-import org.chromium.base.test.shadows.ShadowMultiDex;
import org.chromium.testing.local.LocalRobolectricTestRunner;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -26,12 +25,10 @@ import org.robolectric.util.ActivityController;
/** Unit tests for {@link BaseChromiumApplication}. */
@RunWith(LocalRobolectricTestRunner.class)
-@Config(manifest = Config.NONE,
- application = BaseChromiumApplication.class,
- shadows = {BaseChromiumApplicationTest.TrackingShadowActivity.class, ShadowMultiDex.class})
+@Config(manifest = Config.NONE, application = BaseChromiumApplication.class,
+ shadows = {BaseChromiumApplicationTest.TrackingShadowActivity.class})
public class BaseChromiumApplicationTest {
- /** Shadow that tracks calls to onWindowFocusChanged and dispatchKeyEvent. */
@Implements(Activity.class)
public static class TrackingShadowActivity extends ShadowActivity {
private int mWindowFocusCalls;
diff --git a/base/base.gyp b/base/base.gyp
index d57ec6e..a9038cd 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -1450,7 +1450,6 @@
'base_java_library_process_type',
'base_java_memory_pressure_level',
'base_native_libraries_gen',
- '../third_party/android_tools/android_tools.gyp:android_support_multidex_javalib',
'../third_party/jsr-305/jsr-305.gyp:jsr_305_javalib',
],
'includes': [ '../build/java.gypi' ],
@@ -1508,30 +1507,12 @@
'includes': [ '../build/java.gypi' ],
},
{
- # TODO(jbudorick): Remove this once we roll to robolectric 3.0 and pull
- # in the multidex shadow library. crbug.com/522043
- # GN: //base:base_junit_test_support
- 'target_name': 'base_junit_test_support',
- 'type': 'none',
- 'dependencies': [
- '../testing/android/junit/junit_test.gyp:junit_test_support',
- '../third_party/android_tools/android_tools.gyp:android_support_multidex_javalib',
- ],
- 'variables': {
- 'src_paths': [
- '../base/test/android/junit/',
- ],
- },
- 'includes': [ '../build/host_jar.gypi' ]
- },
- {
# GN: //base:base_junit_tests
'target_name': 'base_junit_tests',
'type': 'none',
'dependencies': [
'base_java',
'base_java_test_support',
- 'base_junit_test_support',
'../testing/android/junit/junit_test.gyp:junit_test_support',
],
'variables': {
diff --git a/base/test/android/javatests/src/org/chromium/base/test/BaseInstrumentationTestRunner.java b/base/test/android/javatests/src/org/chromium/base/test/BaseInstrumentationTestRunner.java
index 0eab231..35fe9b9 100644
--- a/base/test/android/javatests/src/org/chromium/base/test/BaseInstrumentationTestRunner.java
+++ b/base/test/android/javatests/src/org/chromium/base/test/BaseInstrumentationTestRunner.java
@@ -8,7 +8,6 @@ import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.Build;
-import android.os.Bundle;
import android.test.AndroidTestRunner;
import android.test.InstrumentationTestRunner;
import android.text.TextUtils;
@@ -18,7 +17,6 @@ import junit.framework.TestResult;
import org.chromium.base.Log;
import org.chromium.base.SysUtils;
-import org.chromium.base.multidex.ChromiumMultiDex;
import org.chromium.base.test.BaseTestResult.SkipCheck;
import org.chromium.base.test.util.MinAndroidSdkLevel;
import org.chromium.base.test.util.Restriction;
@@ -34,12 +32,6 @@ public class BaseInstrumentationTestRunner extends InstrumentationTestRunner {
private static final String TAG = "cr.base.test";
@Override
- public void onCreate(Bundle arguments) {
- ChromiumMultiDex.install(getTargetContext());
- super.onCreate(arguments);
- }
-
- @Override
protected AndroidTestRunner getAndroidTestRunner() {
AndroidTestRunner runner = new AndroidTestRunner() {
@Override
diff --git a/base/test/android/junit/src/org/chromium/base/test/shadows/ShadowMultiDex.java b/base/test/android/junit/src/org/chromium/base/test/shadows/ShadowMultiDex.java
deleted file mode 100644
index b3ff57e..0000000
--- a/base/test/android/junit/src/org/chromium/base/test/shadows/ShadowMultiDex.java
+++ /dev/null
@@ -1,21 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.base.test.shadows;
-
-import android.content.Context;
-import android.support.multidex.MultiDex;
-
-import org.robolectric.annotation.Implementation;
-import org.robolectric.annotation.Implements;
-
-/** Do-nothing shadow for {@link android.support.multidex.MultiDex}. */
-@Implements(MultiDex.class)
-public class ShadowMultiDex {
-
- @Implementation
- public static void install(Context context) {
- }
-
-}