Emerge Tools Profile picture
Emerge helps teams like @Spotify, @Duolingo, @Bumble, @Square, @Tinder, @Dropbox, @OpenAI & @CashApp build better mobile apps πŸš€ Now a part of @getSentry 🧠

Jan 23, 11 tweets

We got multiple tags to analyze the Tapo @TPLINK app for being over 760 MB πŸ‘€

Let's see what we find in here πŸ€­πŸ”Ž

Total install size is 764 MB

204.6 MB
171.5 MB frameworks
45.4 MB main app target
27.7 MB plugins
a whole bunch of assets and localizations assets.car

We actually found that the current app version increased by ~162 MB compared to its previous version πŸ€” so what changed?

They added @Unity along with a bunch of other stuff, mostly assets

Speaking of assets, that's honestly what most of the app is πŸ˜…

Aside from the 204 MB , there's another 95 MB of assets floating around in the app bundle. Combined with 71 MB of localizations, assets and localizations alone make up 370 MB (or 49%) of total install sizeassets.car

Tons of JSON animations too, here's one showing you how to install your doorbell cam

There's an easy 162 MB (21%) of bloat that could be reduced by stripping binary symbols, optimizing images, removing duplicates, and minifying strings

We found (neural network lib) in the app which is very unusual for an iOS app πŸ€”

.so is essentially the Linux/android equivalent of a .dylib in macOS / iOS

Out of the ~10k iOS apps we pull from the App Store, Tapo was 1 of only 6 apps that had a .so lib in its iOSlibncnn.so

Now is this some complicating engineering feat to use Tencent's neural network library?

Unfortunately it doesn't seem to be. Inspecting the file shows us it was for Linux

So it's just in the app...hanging out...doing nothing 😬

Speaking of just hanging out and doing nothing...we found this audio file called silence.m4a which is a 10 second audio file of, you guessed it, absolute silence 🀐

Definitely something strange happening here, all pointing to the fact that this app should not be 700+ MB 😬

Thanks for all the tags on this one! Check out the full analysis here emergetools.com/app/example/io…

@threadreaderapp unroll

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling