我正计划为互联网带宽低的新兴市场开发一个应用程序。该应用程序严重需要互联网连接才能运行。
我需要这个应用程序有一个小的 apk 大小(不超过10mb)并在3G网络上工作。
根据我的研究,如果我从 React Native 中删除x86 JS 二进制文件,apk 大小可能小到 4mb。我想 4mb 不包括 JS 文件和图像,所以客户需要在他/她第一次打开应用程序时下载,对吗?
如果我想要一个在 3G 上运行的 apk 大小小于 10mb 的应用程序,那么使用 React Native 对我来说一般来说是一个好主意吗?提高它效率的最佳实践是什么?
问问题
10881 次
2 回答
23
相反,删除影响很小的 js,你应该去寻找二进制资源,比如字体和嵌入的图像。除此之外,这些技术可能对您有用:
1)启用Proguard:
要启用 Proguard,请编辑 android/app/build.gradle:
def enableProguardInReleaseBuilds = true
生成单独的构建:
2)在你的 app/build.gradle 集中
def enableSeparateBuildPerCPUArchitecture = true
3) 从 abiFilters 中移除 x86
以下是对您可能会觉得有用的链接的参考:
关于减小 apk 大小的博客:
https://realm.io/news/reducing-apk-size-native-libraries/
链接 Play 商店中最小的 RN 应用程序之一:
https://github.com/sonnylazuardi/ziliun-react-native
关于 apk 大小的 React Native 问题的有用讨论:
于 2016-09-11T07:34:09.863 回答
3
如果您只想要应用较小的应用,请使用原生平台本身。本机 android 应用程序的最小大小为 1 MB。您不能将 React Native 应用程序的大小减小到小于 4 MB。
于 2016-07-04T20:37:18.443 回答