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

Issue 1408163009: [Android] Enable multidex for debug builds of ChromePublic. (Closed)

Created:
5 years, 1 month ago by jbudorick
Modified:
5 years, 1 month ago
Reviewers:
newt (away), Yaron, Nico, sky, agrieve
CC:
chromium-reviews, tim+watch_chromium.org, darin (slow to review), maxbogue+watch_chromium.org, qsr+mojo_chromium.org, zea+watch_chromium.org, vmpstr+watch_chromium.org, viettrungluu+watch_chromium.org, jam, yzshen+watch_chromium.org, abarth-chromium, pvalenzuela+watch_chromium.org, Aaron Boodman, darin-cc_chromium.org, mikecase+watch_chromium.org, oshima+watch_chromium.org, plaree+watch_chromium.org, klundberg+watch_chromium.org, ben+mojo_chromium.org, jbudorick+watch_chromium.org, yfriedman+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Android] Enable multidex for debug builds of ChromePublic. This is a non-incremental implementation. It adds @MainDex to classes used by the renderer to keep them in the main dex, as it can't load secondary dexes when using the multidex support library (i.e., on K and below). BUG=272790 TBR=newt@chromium.org,sky@chromium.org Committed: https://crrev.com/f667d3b3a1b953800bb5325c7b8d62775a1c5aeb Cr-Commit-Position: refs/heads/master@{#359453}

Patch Set 1 #

Total comments: 5

Patch Set 2 : no-op ChromiumMultiDex.install for non-multidex builds #

Total comments: 13

Patch Set 3 : cpp #

Patch Set 4 : fix release builds #

Patch Set 5 : remaining comments #

Patch Set 6 : actually remove --tested-apk-multidex-configuration-path #

Total comments: 5

Patch Set 7 : fix gn build #

Unified diffs Side-by-side diffs Delta from patch set Stats (+278 lines, -116 lines) Patch
M base/BUILD.gn View 1 2 3 4 5 6 2 chunks +9 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/AnimationFrameTimeHistogram.java View 1 chunk +3 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/ApplicationStatus.java View 2 chunks +2 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/BaseChromiumApplication.java View 2 chunks +8 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/CommandLine.java View 2 chunks +3 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/FieldTrialList.java View 1 chunk +3 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/JNIUtils.java View 1 chunk +2 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/MemoryPressureListener.java View 2 chunks +2 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/PathUtils.java View 2 chunks +2 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/SystemMessageHandler.java View 1 chunk +2 lines, -0 lines 0 comments Download
M base/android/java/src/org/chromium/base/library_loader/LegacyLinker.java View 2 chunks +2 lines, -0 lines 0 comments Download
D base/android/java/src/org/chromium/base/multidex/ChromiumMultiDex.java View 1 1 chunk +0 lines, -58 lines 0 comments Download
A + base/android/java/templates/ChromiumMultiDex.template View 1 2 2 chunks +5 lines, -0 lines 0 comments Download
M base/base.gyp View 1 2 3 4 5 6 2 chunks +17 lines, -0 lines 0 comments Download
M build/android/gyp/apk_obfuscate.py View 1 2 3 4 5 6 3 chunks +45 lines, -1 line 0 comments Download
A build/android/gyp/configure_multidex.py View 1 2 3 4 5 1 chunk +55 lines, -0 lines 0 comments Download
M build/android/gyp/dex.py View 1 2 5 chunks +17 lines, -25 lines 0 comments Download
M build/android/gyp/main_dex_list.py View 1 2 3 3 chunks +17 lines, -1 line 0 comments Download
M build/android/java_cpp_template.gypi View 1 2 2 chunks +2 lines, -0 lines 0 comments Download
M build/android/main_dex_action.gypi View 1 3 chunks +4 lines, -2 lines 0 comments Download
M build/android/main_dex_classes.flags View 1 chunk +4 lines, -0 lines 0 comments Download
M build/android/push_libraries.gypi View 1 chunk +1 line, -1 line 0 comments Download
M build/java.gypi View 3 chunks +0 lines, -10 lines 0 comments Download
M build/java_apk.gypi View 1 2 3 4 8 chunks +55 lines, -18 lines 0 comments Download
M chrome/android/chrome_apk.gyp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java View 1 chunk +3 lines, -0 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/LocationProviderAdapter.java View 2 chunks +2 lines, -0 lines 0 comments Download
M content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsObserverProxy.java View 2 chunks +2 lines, -0 lines 0 comments Download
M mojo/android/system/src/org/chromium/mojo/system/impl/CoreImpl.java View 2 chunks +2 lines, -0 lines 0 comments Download
M sync/android/java/src/org/chromium/sync/notifier/RandomizedInvalidationClientNameGenerator.java View 2 chunks +3 lines, -0 lines 0 comments Download
M ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java View 2 chunks +2 lines, -0 lines 0 comments Download
M ui/android/java/src/org/chromium/ui/resources/ResourceManager.java View 1 2 2 chunks +2 lines, -0 lines 0 comments Download

Messages

Total messages: 33 (6 generated)
jbudorick
Note that this is still gyp-only. With gyp_managed_install=1, I got the following after making whitespace ...
5 years, 1 month ago (2015-10-30 00:55:40 UTC) #2
agrieve
What went wrong with the incremental approach? On 2015/10/30 00:55:40, jbudorick wrote: > Note that ...
5 years, 1 month ago (2015-10-30 01:20:11 UTC) #3
agrieve
https://codereview.chromium.org/1408163009/diff/1/base/android/java/src/org/chromium/base/BaseChromiumApplication.java File base/android/java/src/org/chromium/base/BaseChromiumApplication.java (right): https://codereview.chromium.org/1408163009/diff/1/base/android/java/src/org/chromium/base/BaseChromiumApplication.java#newcode34 base/android/java/src/org/chromium/base/BaseChromiumApplication.java:34: ChromiumMultiDex.install(this); Was there a thing about this causing a ...
5 years, 1 month ago (2015-10-30 01:20:27 UTC) #4
jbudorick
The problem is with main dex class list generation. When you do it on a ...
5 years, 1 month ago (2015-10-30 01:25:46 UTC) #5
agrieve
Aaah, tricky. Well, timing certainly looks good, and it should be able to happen at ...
5 years, 1 month ago (2015-10-30 01:50:18 UTC) #6
Yaron
https://codereview.chromium.org/1408163009/diff/1/base/android/java/src/org/chromium/base/BaseChromiumApplication.java File base/android/java/src/org/chromium/base/BaseChromiumApplication.java (right): https://codereview.chromium.org/1408163009/diff/1/base/android/java/src/org/chromium/base/BaseChromiumApplication.java#newcode34 base/android/java/src/org/chromium/base/BaseChromiumApplication.java:34: ChromiumMultiDex.install(this); On 2015/10/30 01:25:46, jbudorick wrote: > On 2015/10/30 ...
5 years, 1 month ago (2015-10-30 17:26:45 UTC) #7
jbudorick
This is now in the running for the ugliest patches I've ever submitted to chromium. ...
5 years, 1 month ago (2015-11-04 23:43:47 UTC) #8
Yaron
On 2015/11/04 23:43:47, jbudorick wrote: > This is now in the running for the ugliest ...
5 years, 1 month ago (2015-11-10 03:30:21 UTC) #9
jbudorick
On 2015/11/10 03:30:21, Yaron wrote: > On 2015/11/04 23:43:47, jbudorick wrote: > > This is ...
5 years, 1 month ago (2015-11-10 03:39:17 UTC) #10
Yaron
https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java File base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java (right): https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java#newcode19 base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java:19: public static void install(Context context) { wow - that's ...
5 years, 1 month ago (2015-11-11 02:06:38 UTC) #11
agrieve
https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java File base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java (right): https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java#newcode19 base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java:19: public static void install(Context context) { On 2015/11/11 02:06:38, ...
5 years, 1 month ago (2015-11-11 14:28:20 UTC) #12
jbudorick
On 2015/11/11 14:28:20, agrieve wrote: > https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java > File > base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java > (right): > > ...
5 years, 1 month ago (2015-11-11 14:29:43 UTC) #13
agrieve
https://codereview.chromium.org/1408163009/diff/20001/base/base.gyp File base/base.gyp (right): https://codereview.chromium.org/1408163009/diff/20001/base/base.gyp#newcode1475 base/base.gyp:1475: 'target_name': 'base_multidex_enabled_java', Curious why you made these into separate ...
5 years, 1 month ago (2015-11-11 14:43:01 UTC) #14
jbudorick
Switching to the preprocessor cleaned this up considerably. ptal https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java File base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java (right): https://codereview.chromium.org/1408163009/diff/20001/base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java#newcode19 base/android/multidex/java_disabled/src/org/chromium/base/multidex/ChromiumMultiDex.java:19: ...
5 years, 1 month ago (2015-11-12 20:33:40 UTC) #15
Yaron
lgtm (much cleaner!) https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template File base/android/java/templates/ChromiumMultiDex.template (right): https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template#newcode33 base/android/java/templates/ChromiumMultiDex.template:33: #if defined(CONFIGURATION_NAME_Debug) nit: why not just ...
5 years, 1 month ago (2015-11-12 22:15:20 UTC) #16
jbudorick
https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template File base/android/java/templates/ChromiumMultiDex.template (right): https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template#newcode33 base/android/java/templates/ChromiumMultiDex.template:33: #if defined(CONFIGURATION_NAME_Debug) On 2015/11/12 22:15:20, Yaron wrote: > nit: ...
5 years, 1 month ago (2015-11-12 22:20:49 UTC) #17
Yaron
https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template File base/android/java/templates/ChromiumMultiDex.template (right): https://codereview.chromium.org/1408163009/diff/70032/base/android/java/templates/ChromiumMultiDex.template#newcode33 base/android/java/templates/ChromiumMultiDex.template:33: #if defined(CONFIGURATION_NAME_Debug) On 2015/11/12 22:20:49, jbudorick wrote: > On ...
5 years, 1 month ago (2015-11-12 22:27:45 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1408163009/70032 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1408163009/70032
5 years, 1 month ago (2015-11-12 22:38:19 UTC) #21
jbudorick
thakis: ptal at base/{base.gyp,BUILD.gn} sky: TBR for mechanical changes in mojo/ newt: TBR for mechanical ...
5 years, 1 month ago (2015-11-12 23:20:39 UTC) #23
Nico
my 2 files lgtm
5 years, 1 month ago (2015-11-12 23:24:56 UTC) #24
newt (away)
ui/android lgtm
5 years, 1 month ago (2015-11-12 23:41:54 UTC) #25
newt (away)
What's the logic for determining where to add @MainDex?
5 years, 1 month ago (2015-11-12 23:45:32 UTC) #26
jbudorick
On 2015/11/12 23:45:32, newt wrote: > What's the logic for determining where to add @MainDex? ...
5 years, 1 month ago (2015-11-12 23:54:57 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1408163009/110001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1408163009/110001
5 years, 1 month ago (2015-11-13 00:08:14 UTC) #30
newt (away)
On 2015/11/12 23:54:57, jbudorick wrote: > On 2015/11/12 23:45:32, newt wrote: > > What's the ...
5 years, 1 month ago (2015-11-13 00:10:47 UTC) #31
commit-bot: I haz the power
Committed patchset #7 (id:110001)
5 years, 1 month ago (2015-11-13 00:45:06 UTC) #32
commit-bot: I haz the power
5 years, 1 month ago (2015-11-13 00:45:52 UTC) #33
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/f667d3b3a1b953800bb5325c7b8d62775a1c5aeb
Cr-Commit-Position: refs/heads/master@{#359453}

Powered by Google App Engine
This is Rietveld 408576698