我使用两种不同的技术创建了同一个移动应用程序的两个版本。React Native + Expo和React + Capacitor.
引起我注意的是APK包大小的差异相当大。所以我尝试用React Native + Expo创建一个Hello World应用程序,甚至那个应用程序的大小也相当大。究竟是什么导致React Native创建的简单应用变得如此庞大?
React native有很多样板代码,它需要这些代码来创建React native和native之间的桥梁。与此同时,它有节点模块,其他依赖关系,增加APK的大小。
基本上应用的大小取决于:
- JS代码(例如你用JS写的代码,用JS写的nodemodule代码)
- 本机代码(由于RN与本机通信,它创建了一个桥接,因此默认情况下会添加更多的样板代码)
- 资产(如图像,视频)可能会妨碍大小,因此最好有远程url。
一个建议是创建一个AAB文件,然后上传到playstore,因为这样可以大大减少大小。
你也可以查看这个线程rn - reducesize
如果有任何疑问请告诉我