为什么我的具有 6-8 个屏幕的 React Native 应用程序编译为 151MB APK,而另一个具有 12-15 个屏幕的 React Native 应用程序编译为仅 69MB?

问题描述 投票:0回答:1

与第一个应用程序相比,apk 文件的大小增加了,但使用更多的屏幕,但更少的 MB (69MB),但第二个应用程序的屏幕更少,更多的 apk 文件大小 (151MB)

apk文件大小增大的原因以及如何减小apk文件大小

react-native j
1个回答
0
投票

APK 大小不依赖于屏幕数量。

这有一些原因:

  1. 资产文件夹中的高分辨率图像、视频和音频文件可能会增加 APK 大小。 (包括针对不同屏幕密度的多个版本的图像)。

  2. 大型库或未使用的依赖项可能会使 APK 膨胀。 (如果您使用本机库 (NDK),它们可能会增加大小)。您还可以从 cost-of-modules

    检查您的图书馆成本
  3. 未使用的资源和未移除的资产。

但是,您可以通过以下步骤减小 APK 大小:

  1. 启用 ProGuard 或 R8 来缩小和优化您的代码。这可以通过在 build.gradle 文件中设置 minifyEnabled true 来完成:

android { buildTypes { release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } 

  1. 确保从npm安装的react-native库以及本机库的大小。

  2. 另外你还可以做:

  • 打开android/app/build.gradle

  • 设置

    def enableProguardInReleaseBuilds = true
    这将使 Progaurd 能够压缩 Java 字节码。这会稍微减少应用程序的大小。

  • 设置

    def enableSeparateBuildPerCPUArchitecture = true
    。 Android设备支持两种主要的设备架构armebi和x86。默认情况下,RN 将这两种架构的本机库构建到同一个 apk 中。

© www.soinside.com 2019 - 2024. All rights reserved.