How to Downsize Installation Package
Last updated: 2023-10-13 11:21:36Download PDF
How much will the file increment be after the TRTC SDK is integrated?
The file size increment varies by TRTC SDK version. For more information, please see SDK Download.
How do I reduce the size of an installation package for iOS?
Method 1. Only package the ARM64 architecture (recommended)
Method 2. Enable Bitcode
For iPhone models after 5s, you can just package x64 architecture by setting "Build Active Architecture Only" in "Build Settings" in Xcode to "Yes" and write only
arm64into "Valid Architectures". The single-architecture IPA increment of the TRTC SDK will be 1.9 MB only.
For iPhone 5s and older models, if all third-party libraries in the project support Bitcode, you can enable Bitcode to reduce the size of the installation package. Toggle on "Enable Bitcode" in "Build Settings" > "Build Options" to enable bitcode.
From 2016 on, Apple started to support Bitcode compilation in the Xcode development environment. After Bitcode is enabled, the compiler will generate the application's intermediate code instead of the actual assembly code, and users will download and install the machine code generated for the specific mobile CPU architecture from App Store, which greatly reduces the installation package size.
How do I reduce the size of an installation package for Android?
Method 1. Only package certain .so files
Method 2. Only package JAR files (i.e., .so files will be downloaded after installation)
If your application is used in the Chinese mainland only, you can just package the .so files for the
armeabi-v7aarchitecture to reduce the increment in the installation package size to below 5 MB. If you want to offer your application on Google Play, you can package the .so files for the
arm64-v8aarchitectures. Directions: add
build.gradleof the current project to specify to package the .so files in a single architecture only or add
abiFilters "armeabi-v7a","arm64-v8a"to specify to package .so files in two architectures.
If only .so files in
armeabi-v7aarchitecture are packaged (i.e., your application is not offered on Google Play):
If .so files in
arm64-v8aarchitectures are packaged (i.e., your application is offered on Google Play):
If you want to offer your application on Google Play, please do not use this method, as it may cause a failure in offering the application.
The size of .so files takes the greatest proportion of the total size of the SDK for Android. If you want to reduce your installation package to below 1 MB, you can use the method of downloading .so files after installation:
1. In the folder on GitHub, click and download the package named in the format of
LiteAVSDK_TRTC_x.x.xxx.zip, decompress it, and find the .so files for the specified architecture.
2. Upload the .so files downloaded in step 1 to your server (or Tencent Cloud COS) and record the download address such as
3. Before an SDK feature such as video playback is started by the user, use a loading animation to prompt the user that the relevant feature module is being loaded. When the user is waiting, the application can download the .so files from
http://xxx.com/so_files.zipand store the files in the application directory (such as the
filesfolder in the application's root directory). To ensure that this process is not affected by ISP DNS hijacking, please verify the integrity of the .so files after download to check whether the zip package has been tampered with the ISP.
4. After all .so files are ready, call the
setLibraryPath()API in the
TXLiveBaseclass (the earliest basic module of
LiteAVSDK) to set the target paths of the downloaded .so files to the paths in the SDK, so that the SDK can load the required .so files at those paths and start the relevant features.