Skip to content

App Clip uncompressed size is larger than 10MB #71098

@xster

Description

@xster

Submitting a minimal app currently exceeds the 10mb uncompressed size limit with a

ITMS-90865: Thinned app clip size is too large

on 1.24.0-8.0.pre.344.

Compressed, thinned IPA is 4.6mb, but the current uncompressed breakdown is:

Total: 11,289,773 bytes

[ 320]  AppClip.app
├── [ 90K]  AppClip
├── [ 34K]  Assets.car
├── [ 128]  Base.lproj
│   ├── [ 160]  LaunchScreen.storyboardc
│   │   ├── [2.2K]  01J-lp-oVM-view-Ze5-6b-2t3.nib
│   │   ├── [ 258]  Info.plist
│   │   └── [ 896]  UIViewController-01J-lp-oVM.nib
│   └── [ 160]  Main.storyboardc
│       ├── [1.8K]  BYZ-38-t0r-view-8bC-Xf-vdC.nib
│       ├── [ 258]  Info.plist
│       └── [ 923]  UIViewController-BYZ-38-t0r.nib
├── [ 128]  Frameworks
│   ├── [ 192]  App.framework
│   │   ├── [1.7M]  App
│   │   ├── [ 794]  Info.plist
│   │   ├── [  96]  _CodeSignature
│   │   │   └── [2.7K]  CodeResources
│   │   └── [ 160]  flutter_assets
│   │       ├── [   2]  AssetManifest.json
│   │       ├── [   2]  FontManifest.json
│   │       └── [725K]  NOTICES
│   └── [ 192]  Flutter.framework
│       ├── [7.4M]  Flutter
│       ├── [ 956]  Info.plist
│       ├── [  96]  _CodeSignature
│       │   └── [2.0K]  CodeResources
│       └── [781K]  icudtl.dat
├── [4.2K]  Info.plist
├── [   8]  PkgInfo
├── [  96]  _CodeSignature
│   └── [6.7K]  CodeResources
└── [104K]  embedded.mobileprovision

The App.framework/App breakdown is:

Screen Shot 2020-11-23 at 11 15 52 AM

The flutter package breakdown is:
Screen Shot 2020-11-23 at 11 17 10 AM

The Flutter.framework/Flutter breakdown (on an equivalent Android libflutter.so, since we don't have a tool to break down iOS dylibs yet dart-lang/sdk#44278):

Screen Shot 2020-11-23 at 11 23 09 AM

Possible explorations

  • [90k] Dig more into what the AppClip binary is.
  • [1.6m] Build App.framework/App with split-debug-info.
  • [781k] The NOTICES file is huge. Since the uncompressed size is being measured here, there might be de-duplication potential. Deduplicate NOTICES #71102
  • [1m] The 70kb ld-temp.o and the 950kb unattributed code in the Flutter.framework/Flutter / libflutter.so is suspicious.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work lista: sizeReducing IPA/APK/JS sizesplatform-iosiOS applications specificallyteam-iosOwned by iOS platform teamtriaged-iosTriaged by iOS platform team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions