6

对于我的 react native android app,我写的代码大小只有 12KB

但生成的包大小为 7.9MB。我怎样才能减少它。

根据react native 的文档,我已经在文件中启用了 proguard,app_root/android/app/proguard-rules.pro但大小没有减少

...
android {
    ...
    buildTypes {
        release {
            ...
            minifyEnabled true
        }
    }
}
...

有没有可用的解决方案?

4

3 回答 3

6

React Native 应用 APK 包括用于 x86 和 ARM 的 JSCore 二进制文件。如果您不需要 x86,则可以将大小减小到 3-4 MB。

1)在你的 app/build.gradle 集中

def enableSeparateBuildPerCPUArchitecture = true

2) 从 abiFilters 中移除 x86

这帮助我将大小从 7.8 MB 减小到 4.5MB

于 2016-05-30T11:45:21.117 回答
3

Android 设备支持两个主要的设备 artitecture armebix86。默认情况下,RN 将这两种艺术的原生库构建到同一个 apk 中。

打开 android/app/build.gradle :

设置def enableProguardInReleaseBuilds = true ,

这将使 Progaurd 能够压缩 Java 字节码。这将应用程序的大小减少了一点点

和,

设置 def enableSeparateBuildPerCPUArchitecture = true

并检查 android/app/build/outputs/apk/ - 您将收到两个用于 armebi 和 x86 的 apk 文件,大小约为原始 apk 的一半。

于 2018-04-24T12:26:17.957 回答
2

有几种技术可以减小 APK 大小:

  1. 按架构拆分您的应用程序,您可以通过一系列知名架构拆分您的 APK:armeabi-v7a、x86、arm64-v8a、x86_64

    如果您正在分发您的应用程序,那么使用 Play 商店最好使用 Android 应用程序包。

  2. 启用 prodguard 将导致 APK 的大小变小。

  3. 优化您的图像资源,如果有机会,请尝试尽可能多地使用 SVG 资源。

通过启用新的 JavaScript 引擎,在 React-Native 中生成的 APK 的大小发生了变化,0.62这将本机库的大小减少了近40% Hermes 引擎

下面的这些统计数据来自 Hermes 引擎,还提到了 APK 大小的减少。 在此处输入图像描述

于 2019-07-17T01:50:27.970 回答