Not necessarily! As Facebook mentioned in their blog post, per-vendor
variation can exist. Try it on a device identical to the one Richard used
and see what happens.
On 29 Oct 2014 23:41, "James Willcox" <[email protected]> wrote:

> I built both opt and debug with the new SDK and support lib, and haven’t
> had any problem with installing onto a 2.3 device. Must be something else
> going on.
>
> James
>
> On Oct 29, 2014, at 12:54 PM, Chris Kitching <[email protected]>
> wrote:
>
> Proguard has a class merging feature that will mitigate this problem as
> well as save binary size.
>
> In Fennec, this feature is turned off because the example config file from
> Google I was using as a template contained a comment warning that this can
> crash early versions of Dalvik.
>
> We may no longer care. The options should be pretty straightforward to
> spot in profuard.cfg (but I'll post again with mxr links if desired when
> I'm not on a phone).
>
> I suggest investigating this before trying Facebook's selections of utter
> insanity.
> On 29 Oct 2014 16:32, "James Willcox" <[email protected]> wrote:
>
>>
>>
>> On Oct 29, 2014, at 11:07 AM, Richard Newman <[email protected]> wrote:
>>
>> When I build and install Fennec on my 2.3 hardware, I hit an error that
>> we’re exceeding LinearAlloc capacity. Gingerbread has a 5MB limit. ICS and
>> up have 8MB.
>>
>> I don’t hit this with builds from infra. I recently upgraded support
>> library and SDK; I’m pretty confident that before the upgrade I was able to
>> install my built APKs.
>>
>>
>> Doing some reading, this seems to occur when you have deep interface
>> hierarchies, and/or lots of classes. You’ll see this issue cited a lot:
>>
>>  https://code.google.com/p/android/issues/detail?id=22586
>>
>> but lots of other folks seem to hit this just by using fat libraries
>> (e.g., JodaTime). You start dumping Facebook libs, rendering libs, datetime
>> libs into your project, and suddenly it won’t install. E.g.,
>>
>>  http://www.birbit.com/how-to-solve-linearalloc-problem/
>>
>>
>> We do use fat libraries, we are a big project, and so I suspect we’re
>> hovering right around 5MB with old tools, and over 5MB with new ones.
>>
>> Another hypothesis is that method name collisions (typically across
>> libraries) will b0rk things, but I don’t see evidence of that in my ADB log.
>>
>>
>> So I’m concerned: an infra upgrade could just break 2.3 devices, for one
>> thing.
>>
>>
>> Yeah, that’s worrying. Presumably our 2.3 emulator testing would catch
>> this, though.
>>
>>
>> Has anyone else hit this?
>>
>>
>> Facebook has, and came up with an insane hack to work around it:
>> https://www.facebook.com/notes/facebook-engineering/under-the-hood-dalvik-patch-for-facebook-for-android/10151345597798920
>>
>> I think if it comes to it, we can use the same hack.
>>
>>
>>
>> My expectation would be that ProGuard would eliminate enough code to fix
>> this, but perhaps it’s not aggressively pruning library code.
>>
>>
>> I would like to know how much ProGuard strips out. Do we have that
>> somewhere? Does ProGuard make that easily available?
>>
>> James
>>
>>
>>
>> _______________________________________________
>> mobile-firefox-dev mailing list
>> [email protected]
>> https://mail.mozilla.org/listinfo/mobile-firefox-dev
>>
>>
>
_______________________________________________
mobile-firefox-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/mobile-firefox-dev

Reply via email to