1

Important notes:

  1. App size before adding zoom-sdk: ±70mb.
  2. App size after adding zoom-sdk: ±140mb
  3. App size after using android app bundle: ±60mb

Edit: (zoom-sdk) is a native library (.aar file)

I am using zoom-sdk in my app, I was making the normal apk build to be uploaded on playstore but the size of apk increased over 100MB ( after using zoom sdk).

Then I make use of android app bundle, uploaded the app for internal testing (in playstore), during testing I found out that the module(zoom-sdk) is not found when app is build using android app bundle.

Has anyone faced something similar issue, where we need to use a third party library and build the app using android app bundle.

Exception I was getting:

E/ZMBuildConfig: parse build target failed. value=TARGET_ZOOM
java.lang.NoSuchFieldException: TARGET_ZOOM
    at java.lang.Class.getField(Class.java:1601)
    at us.zoom.b.b.<clinit>(SourceFile:29)
    at com.zipow.cmmlib.AppContext.<clinit>(SourceFile:37)
    at com.zipow.cmmlib.AppContext.a(SourceFile:65)
    at us.zoom.sdk.q.a(SourceFile:441)
asadinside
  • 51
  • 8
  • Is zoom-sdk a native library or java library? What exception are you getting? There is no difference in how dex code is compiled between for APK and AAB, so we're going to need a bit more information. – Pierre Apr 11 '20 at 10:14
  • @Pierre, thanks for your response, I have edited the question, Its a native library, I'll add the exception shortly. – asadinside Apr 12 '20 at 14:08
  • Can you try adding the `android.bundle.enableCompressedNativeLibs=false` to your Gradle properties file? I'm wondering if the Zoom SDK is not loading its libraries incorrectly, which could make them not find them if the native libraries are uncompressed (which they are by default with the AAB). – Pierre Apr 12 '20 at 15:15
  • @Pierre, I have fixed now, the problem was I did not add proguard rules from their sample project, Also I have added the exception I was getting. – asadinside Apr 14 '20 at 12:04

1 Answers1

3

Adding these lines in proguard file did the trick for me.

-keep class us.zoom.** { *; }
-keep class us.zipow.** { *; }
-keep class com.zipow.** { *; }
-keep class org.webrtc.** { *; }
-dontwarn us.zoom.**
-dontwarn com.zipow.**
SDK4551
  • 109
  • 6