diff options
author | jbudorick <jbudorick@chromium.org> | 2015-08-25 10:42:32 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-08-25 17:43:38 +0000 |
commit | 6daf3a522276748b2f69144f63db76a62a30d014 (patch) | |
tree | 4129dd9617817fd10ddd33634c21aa83131bd6cc /base | |
parent | 48b4fba870ec20212e451e95a841cab89e6ea121 (diff) | |
download | chromium_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')
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) { - } - -} |