Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the actual size in user download? #124

Closed
top2tech opened this issue May 11, 2017 · 3 comments
Closed

What is the actual size in user download? #124

top2tech opened this issue May 11, 2017 · 3 comments
Assignees
Labels

Comments

@top2tech
Copy link

top2tech commented May 11, 2017

I archived video-quickstart-swift, the file size if 277MB. I know it's bitcode, so the actual size in user download will be smaller, but how much it will be roughly?

This is important so we don't have too big file to discourage users from downloading.

The installed size on my iPhone 7 plus of video-quickstart-swift is around 150MB.
Before the bitcode version of twilio video, the installed size is around 50MB.

As a comparison, on the same iPhone, Periscope app (live video broadcast) installed size is 62MB, and House Party app (p2p video chat) is 38MB.

If bitcode brings 3X size, and 100MB additional download size. Looks like the benefit of bitcode is not worthwhile, at least before Apple change bitcode from recommended to mandatory.

So, at least, is it possible to provide a twilio video framework version without bitcode?

@ceaglest
Copy link
Contributor

ceaglest commented May 11, 2017

Hi @top2tech,

This is a very good question, and something that we should include in our documentation. I've asked one of our team members to submit an app containing the Twilio Video SDK to the app store (including Bitcode) so that we can see the final size. I will update this ticket, and our docs once we have this info. In general, Bitcode should not increase the size of the downloadable App and these extra sections are provided so that Apple can re-compile your app dynamically after you submit it.

So, at least, is it possible to provide a twilio video framework version without bitcode?

If you don't want to use Bitcode, please see the sample Podfile I provided in #110. It's possible to strip the Bitcode sections, at least until Apple makes Bitcode a hard requirement. We will have to see what WWDC 2017 brings next month.

Best,
Chris Eagleston

@ceaglest ceaglest self-assigned this May 11, 2017
@ceaglest
Copy link
Contributor

ceaglest commented May 13, 2017

Hi @top2tech,

We haven't done an app store submission yet, but I did follow the instructions from Apple on generating an app sizing report. To get a baseline for comparison I used our Objective-C QuickStart app, which doesn't require including the Swift 3 runtime. CocoaPods was used to install TwilioVideo, which automatically strips the simulator architectures.

Size Estimate

Twilio Video 1.0.0 w/ Bitcode segments included. Xcode 8.3.2 was used to re-compile Bitcode.

armv7: 4.4 MB compressed, 8.5 MB uncompressed
arm64: 4.2 MB compressed, 10.1 MB uncompressed
universal: 8.5 MB compressed, 18.6 MB uncompressed

The final download size that your users will see depends on what device and OS combination they use, as app thinning is only supported on iOS 9.0 and above. Also, the estimate doesn't include any size increase from encryption added once your app is approved for sale.

App Thinning Size Report.txt

Next Steps

We will update our documentation to include sizing estimates. In the future we may decide to automate this process, and publish size estimates with each release of our SDK.

Best,
Chris Eagleston

@ceaglest
Copy link
Contributor

ceaglest commented Nov 27, 2018

Hi @top2tech,

This is an old issue, but I'm happy to report that, starting with 2.5.4 we are now publishing size estimates with each release of the Video SDK. You will also find that the framework artifact includes a size impact report generated with xcodebuild.

Now that size estimation is part of our CI / CD process you can expect that future releases will also contain these reports.

Regards,
Chris

paynerc pushed a commit that referenced this issue Jun 13, 2019
* Reference 2.x APIs on master.
* Use 1.x getting started and Github.io docs.
* Use 1.x download link.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants