Android 如何减少web RTC库的大小?

Android 如何减少web RTC库的大小?,android,quickblox,videochat,quickblox-android,Android,Quickblox,Videochat,Quickblox Android,我遵循quick blox给出的如下指示: 最初我的apk大小是9MB,但当我在应用程序中集成quickblox视频聊天时,由于以下不同平台的文件,apk大小增加到45MB >arm64-v8a >armeabi-v7a >x86 >x86_64 libraries - libjingle_peerconnection_so.so 是否有任何方法或建议可以减少apk大小?如果您想在应用程序中添加视频通话或音频通话功能,则必须添加这些文件。 随着apk大小的缩小,

我遵循quick blox给出的如下指示:

最初我的apk大小是9MB,但当我在应用程序中集成quickblox视频聊天时,由于以下不同平台的文件,apk大小增加到45MB

>arm64-v8a
>armeabi-v7a
>x86
>x86_64  

libraries - libjingle_peerconnection_so.so

是否有任何方法或建议可以减少apk大小?

如果您想在应用程序中添加视频通话或音频通话功能,则必须添加这些文件。 随着apk大小的缩小,有很多关于它的文章,但是关于使用quickblox的jnilibs的文章并不多


希望能有所帮助。

我查看了QuickBlox提供的示例代码,发现您最多可以节省10 MB的apk,但必须构建4个apk。你可以查一下

关于多个APK

不同的Android手机使用不同的CPU,这些CPU反过来又支持 不同的指令集。CPU和指令的每个组合 sets有自己的应用程序二进制接口或ABI

  • armeabi-v7a

    arm64-v8a

    x86_64

    x86

这些是

构建4个apk意味着您可以分别为这4个ABI创建apk。其主要思想是不包括不适用于特定ABI的库,从而通过只包括该ABI所需的库来减小大小

e、 g

更新:

如何将多个APK上传到PlayStore


这个问题已经被问过了。请检查此项

是否有解决方案?我还需要相同的解决方案,您正在使用的webrtc模块是什么?是否有任何特定的单模块或多模块?ODWebRTC模块包括核心模块、用户模块、消息模块、内容模块、聊天模块和视频聊天WEBRTC模块。您对常见应用程序大小缩减的回答。这个问题询问了特定的库大小。这看起来是正确的解决方案。你能解释一下建造“4个不同的APK”吗?我会马上给你赏金。谢谢你的回答:)@RanjithKumar我已经添加了关于构建4个不同apk的解释。请检查更新的答案谢谢。今晚我会检查并提供赏金。请给我检查的时间谢谢你的帮助effort@VenSan我没有试过,但他们似乎支持ios。有一个
>arm64-v8a
>armeabi-v7a
>x86
>x86_64  

libraries - libjingle_peerconnection_so.so
 /*There is code for excluding some native libs (it useful if you need reduce apk size and want
build apk only for specific platform). This method allows you to achieve savings about 10MB
of apk's size (but you need build 4 different apks). */
    packagingOptions {
        exclude '**/armeabi-v7a/libjingle_peerconnection_so.so'
        exclude '**/arm64-v8a/libjingle_peerconnection_so.so'
        exclude '**/x86_64/libjingle_peerconnection_so.so'
        exclude '**/x86/libjingle_peerconnection_so.so'
    }
splits {
        abi {
            enable true
            reset()
            include 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a' //select ABIs to build APKs for
            universalApk true //generate an additional APK that contains all the ABIs
        }
    }