How to Optimize Favor App Size in Android Apps
This Knowledge Base article provides step-by-step instructions for implementing Binary Code Obfuscation with the Favor App Size setting enabled. With this setting enabled, Appdome will automatically detect and exclude publicly available elements from being obfuscated to reduce overall application package size.
Optimize Obfuscation – Reduce Android App File Size
Obfuscation decreases the efficiency of compression algorithms, so obfuscating all the code in the app may increase its file size significantly. You can enable Favor App’s Size to keep publicly available elements unobfuscated in order to decrease the size of the built app.
If you enable Favor App Size, the following libraries will remain unobfuscated:
Open Source Libraries:
Libraries | Comment |
libstlport_shared.so | https://developer.android.com/ndk/guides/cpp-support |
libiconv.so, libzbarjni.so | https://github.com/dm77/ZBarScanner |
libtool-checker.so | https://github.com/scottyab/rootbeer |
libcrashlytics.so, libcrashlytics-envelope.so | https://try.crashlytics.com/sdk-android |
libfirebase.so | https://github.com/firebase/firebase-android-sdk |
libmpdf.so | https://github.com/mpdf/mpdf |
libj2v8.so | https://github.com/eclipsesource/J2V8 |
libjniPdfium.so, libmodpdfium.so | https://pdfium.googlesource.com/pdfium |
libopencv_imgproc.so, libopencv_core.so, libopencv_java3.so | https://opencv.org |
Maui, Xamarin Libraries
libmonodroid.so, libmono-btls-shared.so, libmonosgen-2.0.so, libe_sqlite3.so
React Native
libfb.so, libfolly_json.so, libglog.so, libglog_init.so, libgnustl_shared.so, libicu_common.so, libimagepipeline.so, libjsc.so, libprivatedata.so, libreactnativejni.so, libyoga.so. libc++_shared.so
Unity
libunity.so, libil2cpp.so, libcri_ware_unity.so, libgpg.so
Cordova
libxwalkcore.so, libxwalkdummy.so, libsqlcipher.so
IMPORTANT: Some applications which come with anti-tampering might clash with Appdome’s binary code obfuscation. Read this article to learn about Appdome’s Anti-Tampering functionality.
Prerequisites for Mobile app obfuscation using Appdome
In order to use Appdome’s no code implementation of Binary Code Obfuscation, such as Flow Relocation, you’ll need:
- Appdome account – IDEAL or Higher
- Mobile App (.ipa for iOS, or .apk for Android)
- A license for Binary Code Obfuscation
- Signing Credentials (e.g., signing certificates and provisioning profile)
How to Add Binary Code Obfuscation & Favor App Size to Android apps
Follow these step-by-step instructions to add Mobile App Binary Code Obfuscation to Any Mobile App:
- Upload a Mobile App to Your Account.
Follow these steps to add a mobile app to your Appdome account.If you do not yet have an Appdome account, click here to create an account. - Go to Build > Security tab.
- From within TOTALCode™ Obfuscation, enable Binary Code Obfuscation.
- Enable (toggle on) Favor App’s Size (Android only, see below) can also be enabled with Binary Code Obfuscation.
- Click Build My App.
The technology behind Build My App has two major elements – (1) a microservice architecture filled with 1000s of code sets needed for mobile integrations, and (2) an adaptive code generation engine that can recognize the development environment, frameworks and methods in each app and match the app to the relevant code-sets needed to add the requested service to the mobile app in seconds.
Congratulations! When your integration is complete, you will see the notice below. You now have a mobile app fully integrated with Binary Code Obfuscation.
How to Sign & Publish Secured Mobile Apps Built on Appdome
After successfully securing your app using Appdome, there are several available options to complete your project, depending on your app lifecycle or workflow. These include:
- Signing Secure iOS and Android apps
- Customizing, Configuring & Branding Secure Mobile Apps
- Deploying/Publishing Secure mobile apps to Public or Private app stores
Or, see this quick reference Releasing Secured Android & iOS Apps built on Appdome.
Related articles:
How Do I Learn More?
For more details, read the binary Code Obfuscation KB.
Binary Code Obfuscation is just one of the many features TOTALCode™ can offer in terms of code obfuscation.
If you have any questions, please send them our way at support,appdome.com or via the chat window on the Appdome platform.
Thank you!
Thanks for visiting Appdome! Our mission is to secure every app on the planet by making mobile app security easy. We hope we’re living up to the mission with your project.