Analysis of the Facebook iOS App Bundle
The version 87.0 is now available: 253 MB on the same iPad Air 2 with only 64-bit code. In just 6 months, the Facebook.app size grew by 88 MB!
[…]
One of the reason the app size grew is due to multiple copies of the same resources inside the app.
[…]
When analyzing the version 66.0 I completely missed some amusing Objective-C interfaces, protocols and methods:
@protocol FBDeprecatedAppModule_DO_NOT_USE_OR_YOU_WILL_BE_FIRED @protocol FBLoginFacilitatingAppModule <fbdeprecatedappmodule_do_not_use_or_you_will_be_fired> @interface FBTimelineModule : FBNativeAppModule_DO_NOT_USE_OR_YOU_WILL_BE_FIRED @interface FBNotificationsModule : FBNativeAppModule_DO_NOT_USE_OR_YOU_WILL_BE_FIRED @interface FBProductionLockoutModule : FBNativeAppModule_DO_NOT_USE_OR_YOU_WILL_BE_FIRED @interface FBSearchModule : FBNativeAppModule_DO_NOT_USE_OR_YOU_WILL_BE_FIRED
It’s the most popular third-party app in the world, and it’s structured like a pile of garbage.
Previously: The Facebook App’s 18,000 Classes.
Update (2017-04-15): Lawrence Velázquez:
Happened across an old Facebook .ipa on a SuperDuper clone. The years have not been kind.
Update (2017-04-16): Alexandre Colucci:
The version 88.0 of the Facebook.app has now been released[…] As you can see from the smaller download size, the duplicated resources have been removed.