Closed
Bug 1389990
Opened 7 years ago
Closed 7 years ago
Android builds are going to permafail when Gecko 57 merges to Beta on 2017-09-20
Categories
(Firefox Build System :: Android Studio and Gradle Integration, defect)
Tracking
(fennec+, firefox55 unaffected, firefox56 verified, firefox57blocking verified)
VERIFIED
FIXED
mozilla57
Tracking | Status | |
---|---|---|
fennec | + | --- |
firefox55 | --- | unaffected |
firefox56 | --- | verified |
firefox57 | blocking | verified |
People
(Reporter: RyanVM, Assigned: maliu)
Details
(Whiteboard: [FNC][SPT57.2][MVP])
Attachments
(3 files)
[Tracking Requested - why for this release]: Broken Android builds on the next merge day. Using the patches on top of m-c rev 59594b3879cc as shown in this push: https://treeherder.mozilla.org/#/jobs?repo=try&revision=719d759c4fd12922ca7c8312f5840c9d8cf1c79f https://treeherder.mozilla.org/logviewer.html#?job_id=122803828 01:35:29 INFO - trouble writing output: Too many field references: 66723; max is 65536. 01:35:29 INFO - You may try using --multi-dex option. Sebastian, can you please take a look or refer this over to someone else who can? Thanks!
Flags: needinfo?(s.kaspari)
Comment 1•7 years ago
|
||
Max, Jing-Wei: We have a problem. Backing out ConstraintLayout helped us in central - but as soon as we merge to Beta we run into the "Too many field references" problem again. I assume the Beta build configuration is slightly different (Maye Adjust?).
tracking-fennec: --- → ?
Flags: needinfo?(topwu.tw)
Flags: needinfo?(max)
Comment 2•7 years ago
|
||
Using https://github.com/mihaip/dex-method-counts with --count-fields I can remove some from Leanplum(91). I wonder maybe exoplayer2(4408) and measurement(1064) could be our target Just got the field count on central <root>: 64997 <default>: 1 android: 23302 accessibilityservice: 6 accounts: 23 animation: 53 app: 378 appwidget: 6 content: 426 pm: 38 res: 103 database: 127 sqlite: 46 graphics: 373 drawable: 131 shapes: 4 pdf: 3 hardware: 51 display: 6 fingerprint: 11 input: 2 location: 44 media: 391 audiofx: 9 browse: 17 session: 91 net: 82 http: 2 nsd: 14 wifi: 12 nfc: 4 opengl: 5 os: 290 preference: 82 print: 23 pdf: 5 provider: 17 speech: 6 tts: 6 support: 18687 annotation: 20 customtabs: 105 design: 1758 internal: 187 widget: 1556 graphics: 303 drawable: 303 animated: 1 v4: 9026 accessibilityservice: 41 animation: 62 app: 1635 content: 293 pm: 1 res: 20 database: 3 graphics: 316 drawable: 261 hardware: 85 display: 19 fingerprint: 66 internal: 74 view: 74 media: 1463 session: 818 net: 64 os: 68 print: 84 provider: 96 speech: 14 tts: 14 text: 103 util: 284 view: 2937 accessibility: 1116 animation: 29 widget: 1403 v7: 7475 app: 1398 appcompat: 15 cardview: 8 graphics: 216 drawable: 69 media: 772 mediarouter: 16 palette: 1 recyclerview: 7 text: 3 transition: 2 util: 140 view: 744 menu: 588 widget: 4153 helper: 150 util: 5 system: 1 telephony: 54 cdma: 3 gsm: 3 text: 127 format: 13 method: 11 style: 13 transition: 17 util: 75 view: 1074 accessibility: 239 animation: 53 inputmethod: 28 webkit: 47 widget: 833 ch: 5262 boye: 5262 httpclientandroidlib: 5262 androidextra: 41 annotation: 1 auth: 117 params: 5 client: 600 cache: 53 config: 41 entity: 74 methods: 169 params: 25 protocol: 75 utils: 104 concurrent: 14 config: 63 conn: 472 params: 38 routing: 73 scheme: 64 socket: 8 ssl: 133 util: 7 cookie: 68 params: 3 entity: 267 mime: 153 content: 61 impl: 2650 auth: 222 client: 993 cache: 494 conn: 664 tsccm: 124 cookie: 235 entity: 17 execchain: 96 io: 195 pool: 20 io: 24 message: 231 params: 110 pool: 97 protocol: 195 util: 106 com: 15877 booking: 81 rtlviewpager: 81 google: 11002 android: 11002 exoplayer2: 4408 audio: 307 decoder: 77 drm: 191 extractor: 881 flv: 49 mkv: 84 mp3: 36 mp4: 169 ogg: 128 rawcc: 10 ts: 236 wav: 28 mediacodec: 114 metadata: 269 emsg: 14 id3: 136 scte35: 74 source: 645 chunk: 99 hls: 233 playlist: 90 text: 457 cea: 123 dvb: 38 subrip: 10 ttml: 72 tx3g: 17 webvtt: 114 trackselection: 164 upstream: 447 cache: 172 crypto: 17 util: 284 video: 125 gms: 6594 actions: 4 ads: 23 identifier: 23 auth: 342 api: 180 credentials: 2 signin: 178 internal: 46 firstparty: 42 shared: 42 base: 13 cast: 1118 games: 55 internal: 302 clearcut: 53 common: 2057 api: 693 internal: 471 data: 141 images: 108 internal: 654 safeparcel: 80 server: 187 converter: 45 response: 132 stats: 87 dynamic: 213 dynamite: 1 descriptors: 1 com: 1 google: 1 android: 1 gms: 1 flags: 1 flags: 27 impl: 27 gcm: 249 iid: 114 internal: 1070 measurement: 1064 internal: 1008 playlog: 75 internal: 75 security: 13 signin: 145 internal: 145 googlecode: 68 eyesfree: 68 braille: 68 selfbraille: 68 jakewharton: 98 disklrucache: 98 leanplum: 1554 activities: 91 annotations: 14 callbacks: 32 internal: 674 messagetemplates: 191 utils: 22 views: 26 squareup: 3074 haha: 2312 guava: 1733 base: 170 collect: 1560 primitives: 3 perflib: 324 analysis: 16 io: 33 trove: 255 leakcanary: 405 analyzer: 1 internal: 129 watcher: 1 picasso: 357 java: 1818 io: 213 lang: 507 ref: 11 reflect: 40 math: 18 net: 146 nio: 95 channels: 5 charset: 24 security: 66 cert: 4 interfaces: 11 spec: 7 text: 28 util: 745 concurrent: 166 atomic: 34 locks: 8 jar: 9 logging: 4 regex: 17 zip: 34 javax: 70 crypto: 29 spec: 3 net: 35 ssl: 32 security: 3 auth: 3 x500: 3 xml: 3 parsers: 3 org: 18660 json: 190 simple: 129 parser: 62 lucasr: 37 dspec: 37 mozilla: 18134 apache: 393 commons: 393 codec: 393 binary: 136 digest: 39 language: 132 net: 67 gecko: 17073 activitystream: 344 homepanel: 253 menu: 57 model: 43 stream: 26 topsites: 41 topstories: 9 ranking: 65 adjust: 16 animation: 62 annotation: 6 background: 375 common: 119 log: 94 writers: 68 db: 11 fxa: 186 oauth: 42 profile: 6 nativecode: 7 preferences: 50 bookmarks: 222 browserid: 85 verifier: 26 cleanup: 11 customtabs: 104 dawn: 4 db: 804 deeplink: 1 delegates: 54 distribution: 97 dlc: 146 catalog: 77 feeds: 142 action: 56 knownsites: 14 parser: 37 subscriptions: 11 firstrun: 102 fxa: 642 activities: 118 authenticator: 149 devices: 65 login: 106 receivers: 30 sync: 118 gcm: 15 gfx: 454 health: 42 home: 1928 icons: 244 decoders: 46 loader: 34 preparation: 18 processing: 12 storage: 32 lwt: 38 mdns: 41 media: 1017 menu: 278 mma: 28 mozglue: 94 notifications: 49 overlays: 172 service: 52 sharemethods: 39 ui: 119 permissions: 37 preferences: 467 process: 67 promotion: 81 prompts: 153 push: 136 autopush: 51 reader: 38 restrictions: 63 search: 52 sqlite: 55 switchboard: 30 sync: 2249 crypto: 57 delegates: 33 middleware: 85 storage: 11 net: 227 repositories: 1034 android: 517 delegates: 86 domain: 133 downloaders: 43 uploaders: 96 setup: 13 activities: 11 stage: 249 synchronizer: 109 telemetry: 21 tabqueue: 94 tabs: 467 telemetry: 188 measurements: 16 pingbuilders: 47 schedulers: 5 stores: 31 text: 28 thirdparty_unused: 15 tokenserver: 41 toolbar: 681 trackingprotection: 21 updater: 96 util: 440 publicsuffix: 10 webapps: 46 widget: 927 themed: 249 geckoview: 2 mozstumbler: 405 service: 405 mainthread: 6 stumblerthread: 276 blocklist: 13 datahandling: 62 scanners: 157 cellscanner: 80 uploadthread: 42 utils: 42 search: 261 autocomplete: 74 ui: 26 w3c: 9 dom: 9 webrtc: 268 videoengine: 44 voiceengine: 161 xmlpull: 22 v1: 22 sun: 2 misc: 1 nio: 1 ch: 1
Updated•7 years ago
|
Whiteboard: [FNC][SPT57.2][MVP]
Assignee | ||
Comment 3•7 years ago
|
||
Hi Joe, Andreas, Blake, Snorp, Based on the build fail log, I did some summarize and breakdown numbers.(check attachment) Though we know that the long-term solution is moving on to Gradle build with multi-dex process enabled, and uplifting Gradle build architecture to 56 is obviously impossible even if we push Gradle to land on 58. So after a little digging on telemetry with Joe, I guess the possible workaround is to disable ChromeCast support temporary between 56~58(after Gradle land), or we deprecate ChromeCast permanently. https://sql.telemetry.mozilla.org/dashboard/fennec-46-feature-updates We need Product's call. And also Media team's comment, mobile platform.
Assignee: nobody → max
Flags: needinfo?(snorp)
Flags: needinfo?(max)
Flags: needinfo?(jcheng)
Flags: needinfo?(bwu)
Flags: needinfo?(abovens)
Comment 4•7 years ago
|
||
Will block the 57beta release, tracking with the appropriate flag
Can we just turn off Leanplum until we get the gradle build going? It doesn't make sense to disable product features when we can just kill the retention tool that we aren't even using yet...
Flags: needinfo?(snorp)
I guess exoplayer would be my next target, as it's only used for a new feature that we haven't shipped yet (HLS support).
Comment 7•7 years ago
|
||
I agree with James. Rather than turning off existing functionality, I'd rather delay introducing new stuff, meaning Leanplum or exoplayer. Let me investigate.
Flags: needinfo?(abovens)
squareup/haha and squareup/leakcanary can be removed from production builds, I would think, which should get us under the limit.
Comment 9•7 years ago
|
||
we have very minimal usage on chromecast. There has been discussions around disabling chromecast support in the past so it may be a right time to do so. We are getting positive initial results from retention campaigns we run on beta so I'd want to keep LeanPlum much more than Chromecast
Flags: needinfo?(jcheng)
Comment 10•7 years ago
|
||
if exoplayer is the HLS support (and nothing else?), I agree it is also a candidate we can think about postponing
Comment 11•7 years ago
|
||
Folks, sorry that I'm late to this party. I wasn't aware that there was urgency to the Gradle work, and -- sod's law -- it came when I'm on parental leave :) I would like to raise the possibility of "just using the existing Gradle builds", and accepting some risk. Nightly and Beta have been building APKs using Gradle, and we're not _aware_ of issues with crossing over. We (really, I) have been extremely cautious about crossing over because I didn't think we had QA and testing resources to actually verify that we hadn't broken anything. But the effort going into work-arounds and testing might just be similar to the effort going into cutting over Nightly and figuring out what (if anything!) breaks, and then cutting over Beta, etc. That is, there's very little _technical_ barrier to just using the Gradle builds, and all sorts of testing/process/risk mitigation barriers. (It might be that the Gradle builds require work to sign correctly, but I doubt that work is significant.) But we can cross those barriers with sufficient effort and incentive. I think this is that incentive, but it's not my decision to make. (In reply to Nevin Chen [:nechen] from comment #2) > Using https://github.com/mihaip/dex-method-counts with --count-fields > I can remove some from Leanplum(91). > I wonder maybe exoplayer2(4408) and measurement(1064) could be our target > > Just got the field count on central These numbers look like they come from a Gradle build. Can you link the APK(s) that you used to generate them? I wouldn't expect com.squareup.haha to appear in the non-Gradle list, for instance.
Assignee | ||
Comment 12•7 years ago
|
||
(In reply to Nick Alexander :nalexander [parental leave until September 15th] from comment #11) > (In reply to Nevin Chen [:nechen] from comment #2) > > Using https://github.com/mihaip/dex-method-counts with --count-fields > > I can remove some from Leanplum(91). > > I wonder maybe exoplayer2(4408) and measurement(1064) could be our target > > > > Just got the field count on central > > These numbers look like they come from a Gradle build. Can you link the > APK(s) that you used to generate them? > > I wouldn't expect com.squareup.haha to appear in the non-Gradle list, for > instance. I asked Nevin yeserday morning, and the apk is from local build. So you are correct, "haha" does not exist in by breakdown sheet. (In reply to James Willcox (:snorp) (jwillcox@mozilla.com) from comment #5) > Can we just turn off Leanplum until we get the gradle build going? It > doesn't make sense to disable product features when we can just kill the > retention tool that we aren't even using yet... I guess removing Leanplum can only save us 136 field count, we are still 1051 shortage(66723 - 65536 - 136) Also, "squareup.haha" does not exist on beta build, leakcannery only contribute 1 field, picasso contributes 190 fields. (In reply to James Willcox (:snorp) (jwillcox@mozilla.com) from comment #6) > I guess exoplayer would be my next target, as it's only used for a new > feature that we haven't shipped yet (HLS support). I checked the config status of exoplayer,it was switched from nightly only to enable by default on Aug.1st (Bug 1365505). I would also target exoplayer though we will only have 1959 field buffer before overflow.
Flags: needinfo?(kikuo)
Comment 13•7 years ago
|
||
IIUC, now we consider deferring HLS to 58? Cc John Lin and cancel the ni for me since kikuo is ni-ed.
Flags: needinfo?(bwu)
Comment 14•7 years ago
|
||
[Triage@0816] No doubt tracking-fennec:+ with P1, Max would you help update the flag? Thanks.
Flags: needinfo?(max)
Comment 15•7 years ago
|
||
(In reply to Max Liu [:maliu] from comment #12) > (In reply to James Willcox (:snorp) (jwillcox@mozilla.com) from comment #6) > > I guess exoplayer would be my next target, as it's only used for a new > > feature that we haven't shipped yet (HLS support). > > I checked the config status of exoplayer,it was switched from nightly only > to enable by default on Aug.1st (Bug 1365505). I would also target exoplayer > though we will only have 1959 field buffer before overflow. Per discussion offline with maliu and bwu, we could temporarily fix this bug by backing out Bug 1365505. Exoplayer source code then won't be included in beta. Max, do you know who could help on this ?
Flags: needinfo?(max)
Flags: needinfo?(kikuo)
Assignee | ||
Updated•7 years ago
|
tracking-fennec: ? → +
Comment 16•7 years ago
|
||
I've updated Trello cards to reflect that HLS support (exoplayer) will be targeted for 58, given the discussion on this bug.
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment 19•7 years ago
|
||
mozreview-review |
Comment on attachment 8898664 [details] Bug 1389990 - back out d5210a2cb19a (Bug 1365505 - Part1-Make the feature flag be exposed not only on nightly. ) " https://reviewboard.mozilla.org/r/170038/#review175240
Attachment #8898664 -
Flags: review?(kikuo) → review+
Comment 20•7 years ago
|
||
mozreview-review |
Comment on attachment 8898663 [details] Bug 1389990 - back out 80491c51a8e7 (Bug 1365505 - Part2-Turn on the pref for hls not only on nightly.) " https://reviewboard.mozilla.org/r/170036/#review175242
Attachment #8898663 -
Flags: review?(kikuo) → review+
Comment 21•7 years ago
|
||
Pushed by max@mxli.us: https://hg.mozilla.org/integration/autoland/rev/3bf1126bddd8 back out 80491c51a8e7 (Bug 1365505 - Part2-Turn on the pref for hls not only on nightly.) r=kikuo" https://hg.mozilla.org/integration/autoland/rev/b5fa1d07ad05 back out d5210a2cb19a (Bug 1365505 - Part1-Make the feature flag be exposed not only on nightly. ) r=kikuo"
Assignee | ||
Comment 22•7 years ago
|
||
Comment on attachment 8898663 [details] Bug 1389990 - back out 80491c51a8e7 (Bug 1365505 - Part2-Turn on the pref for hls not only on nightly.) " Approval Request Comment [Feature/Bug causing the regression]: Bug 1365505 [User impact if declined]: Failed to build beta [Is this code covered by automated tests?]: No [Has the fix been verified in Nightly?]: Yes [Needs manual test from QE? If yes, steps to reproduce]: No [List of other uplifts needed for the feature/fix]: Same bug the other bug [Is the change risky?]: No [Why is the change risky/not risky?]: Back out build config [String changes made/needed]: No
Attachment #8898663 -
Flags: approval-mozilla-beta?
Updated•7 years ago
|
Attachment #8898663 -
Flags: review?(jolin)
Updated•7 years ago
|
Attachment #8898664 -
Flags: review?(jolin)
Reporter | ||
Comment 23•7 years ago
|
||
The backout was merged to m-c. https://hg.mozilla.org/mozilla-central/rev/b5fa1d07ad05 https://hg.mozilla.org/mozilla-central/rev/3bf1126bddd8
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(topwu.tw)
Flags: needinfo?(s.kaspari)
Resolution: --- → FIXED
Target Milestone: --- → Firefox 57
Reporter | ||
Updated•7 years ago
|
Status: RESOLVED → VERIFIED
Comment 24•7 years ago
|
||
Comment on attachment 8898663 [details] Bug 1389990 - back out 80491c51a8e7 (Bug 1365505 - Part2-Turn on the pref for hls not only on nightly.) " Backout to build beta. Beta56+.
Attachment #8898663 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Reporter | ||
Comment 25•7 years ago
|
||
uplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/f53fa9ca89b9 https://hg.mozilla.org/releases/mozilla-beta/rev/dc22f5250239
status-firefox56:
--- → fixed
Reporter | ||
Updated•7 years ago
|
status-firefox55:
--- → unaffected
Comment 26•7 years ago
|
||
Hi Max, It seems we can only enable bug 1365505 again on "58". Could you please help us to set the bug dependency that we can be notified when I can re-land bug 1365505? Please let us know which bug is the blocker for turning on this feature. Thank you.
Flags: needinfo?(max)
Assignee | ||
Comment 27•7 years ago
|
||
(In reply to James Cheng[:JamesCheng] from comment #26) > Hi Max, > > It seems we can only enable bug 1365505 again on "58". > > Could you please help us to set the bug dependency that we can be notified > when I can re-land bug 1365505? > > Please let us know which bug is the blocker for turning on this feature. > > Thank you. Hi James, I have update the your exoplayer patch to depend on bug 1254353, bug 1286677. Let's keep the bug on the loop. Thanks!
Flags: needinfo?(max)
Comment 28•6 years ago
|
||
James, I learned from Max that even there are some minor remaining work about Gradle, it's now ready for you to bring HLS back since Fennec 59. Please go ahead and you may consult Max shall you have any question about the setup w/ Gradle. Thanks. (In reply to James Cheng[:JamesCheng] from comment #26) > Hi Max, > It seems we can only enable bug 1365505 again on "58". > Could you please help us to set the bug dependency that we can be notified > when I can re-land bug 1365505? > Please let us know which bug is the blocker for turning on this feature. > Thank you.
Flags: needinfo?(jacheng)
Comment 29•6 years ago
|
||
Sure, Thanks for your notification. I have no bandwidth recently... Kilik can do the following work to make Bug 1365505 re-land. ni? kikuo
Flags: needinfo?(jacheng) → needinfo?(kikuo)
Comment 30•6 years ago
|
||
(In reply to James Cheng[:JamesCheng] from comment #29) > Sure, > > Thanks for your notification. I have no bandwidth recently... > > Kilik can do the following work to make Bug 1365505 re-land. > > ni? kikuo Just FYI, I expected this to require Bug 1414054 but when I went to check that was the case, I found that enabling HLS at build time did not actually bloat the DEX method count past the limit! I think that just using Gradle avoids the DEX field count bloat (from all the R.java files) and that allows HLS to just be enabled with no multi-dexing required. I'd appreciate if somebody else can try this and verify that it works on devices. I still expect we will need to disable HLS on Bng (non-Gradle builds). (Note that Bng builds are still confusingly labeled as android-api-16-gradle; it's not worth renaming them before we remove them in Bug 1414415.)
Comment 31•6 years ago
|
||
(In reply to Nick Alexander :nalexander from comment #30) > (In reply to James Cheng[:JamesCheng] from comment #29) > > Sure, > > > > Thanks for your notification. I have no bandwidth recently... > > > > Kilik can do the following work to make Bug 1365505 re-land. > > > > ni? kikuo > > Just FYI, I expected this to require Bug 1414054 but when I went to check > that was the case, I found that enabling HLS at build time did not actually > bloat the DEX method count past the limit! I think that just using Gradle > avoids the DEX field count bloat (from all the R.java files) and that allows > HLS to just be enabled with no multi-dexing required. See try pushes like https://treeherder.mozilla.org/#/jobs?repo=try&revision=d5aefd953850a86395ecce5f76b939fee331cd35.
Comment 32•6 years ago
|
||
(In reply to Nick Alexander :nalexander from comment #30) > (In reply to James Cheng[:JamesCheng] from comment #29) > > Sure, > > > > Thanks for your notification. I have no bandwidth recently... > > > > Kilik can do the following work to make Bug 1365505 re-land. > > > > ni? kikuo > > Just FYI, I expected this to require Bug 1414054 but when I went to check > that was the case, I found that enabling HLS at build time did not actually > bloat the DEX method count past the limit! I think that just using Gradle > avoids the DEX field count bloat (from all the R.java files) and that allows > HLS to just be enabled with no multi-dexing required. > > I'd appreciate if somebody else can try this and verify that it works on > devices. I still expect we will need to disable HLS on Bng (non-Gradle > builds). (Note that Bng builds are still confusingly labeled as > android-api-16-gradle; it's not worth renaming them before we remove them in > Bug 1414415.) IIRC, the DEX field count bloat happens on Beta build because some google-related stuff are included. I'll try to verify that. Thanks for the information.
Flags: needinfo?(kikuo)
Comment 33•6 years ago
|
||
Hi Nick, I dexdump the generated apk under obj-dir/dist/. Here's the result I got. Nightly : method_ids_size - 60642 Beta : method_ids_size - 53122 (Works on device) Beat(no exoplayer) : method_ids_size - 48785 I built Fennec Beta with the following configs. ''' ac_add_options --with-branding=mobile/android/branding/beta ac_add_options --enable-official-branding export MOZILLA_OFFICIAL=1 ''' I'm not sure if there's any configuration I missed for Fennec Beta. But it looks like we're not bloating the dex for now : )
Reporter | ||
Comment 34•6 years ago
|
||
You probably want to change the version number in config/milestone.txt to 59.0 (removing the a1) as well, which will force the NIGHTLY_BUILD & RELEASE_OR_BETA ifdefs to change.
Comment 35•6 years ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #34) > You probably want to change the version number in config/milestone.txt to > 59.0 (removing the a1) as well, which will force the NIGHTLY_BUILD & > RELEASE_OR_BETA ifdefs to change. Thanks RyanVM. Kilik, can you try this? I wasn't involved in the initial backouts so I don't know the details of the DEX bustage.
Flags: needinfo?(kikuo)
Comment 36•6 years ago
|
||
Could you try adjust and leanplum stuff with their API keys? Thanks!
Comment 37•6 years ago
|
||
(In reply to Nevin Chen [:nechen] from comment #36) > Could you try adjust and leanplum stuff with their API keys? > Thanks! Hi Nevin, I'm not familiar with adust/leanplum stuff, how to set API keys for these ? Could you elaborate more ? Any documents will be appreciated.
Comment 38•6 years ago
|
||
(In reply to Kilik Kuo [:kikuo] from comment #37) > (In reply to Nevin Chen [:nechen] from comment #36) > > Could you try adjust and leanplum stuff with their API keys? > > Thanks! > > Hi Nevin, > > I'm not familiar with adust/leanplum stuff, how to set API keys for these ? > Could you elaborate more ? Any documents will be appreciated. Ah, I just followed Ryan's suggestion and got some errors while rebuilding. According to the error messages, I think this (https://firefox-source-docs.mozilla.org/mobile/android/fennec/adjust.html) and this (https://firefox-source-docs.mozilla.org/mobile/android/fennec/mma.html) is what nechen metioned. I'll set these tokens and give it a try.
Flags: needinfo?(kikuo)
Comment 39•6 years ago
|
||
(In reply to Kilik Kuo [:kikuo] from comment #33) > Hi Nick, > > I dexdump the generated apk under obj-dir/dist/. Here's the result I got. > > Nightly : method_ids_size - 60642 > Beta : method_ids_size - 53122 (Works on device) > Beat(no exoplayer) : method_ids_size - 48785 > After changing the version in config/milestone.txt from 59.0a1 to 50.0 and set these configuration in mozconfig ''' ac_add_options --with-branding=mobile/android/branding/beta ac_add_options --enable-official-branding export MOZILLA_OFFICIAL=1 export MOZ_INSTALL_TRACKING=1 export MOZ_NATIVE_DEVICES=1 export MOZ_ANDROID_MMA=1 ac_add_options --with-adjust-sdk-keyfile="$topsrcdir/mobile/android/base/adjust-sdk-sandbox.token" ac_add_options --with-leanplum-sdk-keyfile="$topsrcdir/mobile/android/base/leanplum-sdk-sandbox.token" ''' The dex method count is as below Beta : method_ids_size - 61374 (Works on device) Beta (without exoplayer) : method_ids_size - 57059
Comment 40•6 years ago
|
||
This is really good news. I'm not 100% sure why building with Gradle alone fixed this, since it doesn't appear to be the field count that overflowed earlier. There are a number of changes internally that could be responsible, and since we're so close to the limit, multi dex (Bug 1414054) is still important. Now that I think about it... I removed a lot of code for the Search Activity in the 58 window; it's possible that and other clean ups for removing Australis are responsible for the method count drop.
Comment 41•6 years ago
|
||
(In reply to Nick Alexander :nalexander from comment #40) > This is really good news. I'm not 100% sure why building with Gradle alone > fixed this, since it doesn't appear to be the field count that overflowed > earlier. There are a number of changes internally that could be > responsible, and since we're so close to the limit, multi dex (Bug 1414054) > is still important. Now that I think about it... I removed a lot of code > for the Search Activity in the 58 window; it's possible that and other clean > ups for removing Australis are responsible for the method count drop. Sweat! Nick Thanks ! Btw, is there chance that Bug 1414054 can ride the train 59 or do you know is there any other Fennec features which are about to land in 59 that may increase the method count ? I'm thinking that if Bug 1414054 can ride the train 59 and there's no other features which may increase the method count dramatically, I'd like to flip the default pref on and make exoplayer included on all brandings soon. (Bug 1365505)
Comment 42•6 years ago
|
||
(In reply to Kilik Kuo [:kikuo] (PTO:11/23~11/27) from comment #41) > (In reply to Nick Alexander :nalexander from comment #40) > > This is really good news. I'm not 100% sure why building with Gradle alone > > fixed this, since it doesn't appear to be the field count that overflowed > > earlier. There are a number of changes internally that could be > > responsible, and since we're so close to the limit, multi dex (Bug 1414054) > > is still important. Now that I think about it... I removed a lot of code > > for the Search Activity in the 58 window; it's possible that and other clean > > ups for removing Australis are responsible for the method count drop. > > Sweat! Nick Thanks ! > Btw, is there chance that Bug 1414054 can ride the train 59 or do you know > is there any other Fennec features which are about to land in 59 that may > increase the method count ? Fennec development has really slowed, so my expectation is that HLS/exoplayer2 could ride the 58 train if you really wanted it to. But the 59 train should definitely be fine from a technical perspective, and as far as I know product wants HLS ASAP. > I'm thinking that if Bug 1414054 can ride the train 59 and there's no other > features which may increase the method count dramatically, I'd like to flip > the default pref on and make exoplayer included on all brandings soon. (Bug > 1365505) I think that should be fine. I expect that you will need to disable HLS/exoplayer2 in the non-Gradle build, which is confusingly controlled in https://searchfox.org/mozilla-central/source/mobile/android/config/mozconfigs/android-api-16-gradle. (We just haven't changed the names; we're hoping to delete that build configuration Real Soon Now: Bug 1414415.)
Updated•5 years ago
|
Product: Firefox for Android → Firefox Build System
Target Milestone: Firefox 57 → mozilla57
You need to log in
before you can comment on or make changes to this bug.
Description
•