与React Native原始版本相比,iOS中的应用程序规模更大

时间:2019-07-15 02:48:34

标签: flutter

我已经重新创建了一个简单的应用程序,该应用程序最初是由React Native制作的,在应用商店中的文件大小为5MB。该应用没有图片或任何特定大小的图片,但确实使用了Admob个广告。

在将其上传到应用商店后,该构建显示为35MB ...不确定原因是什么,但是在打开构建档案的打包内容时,似乎{中有dylib个文件创建的{1}}非常大。无论如何,这是档案中最大的文件夹。我认为这与为使用Admob而创建的SwiftSupport/iphoneos文件夹有关。

我猜它永远不可能像React Native原始应用一样小,但是可以肯定它不应该是大小的 倍...有某种方法删除Pods文件还是其他缩小方法?

编辑:同样在SwiftSupport的构建归档文件的Runner项目文件夹中,也存在大量的Swift Frameworks文件。这些Swift支持dylib文件确实占据了所有空间……

只是为Android构建了该应用程序,它的容量为8.33MB,即使两个版本当然都使用Admob,也是如此。

2 个答案:

答案 0 :(得分:0)

我有两个资料来源:第一个[1]的标题为'Flutter vs Swift',第二个[2]'如何为flutter中的现有项目启用swift支持'。阅读我们观察到的颤动和迅捷两者并不一定要共存,而观察后者,我们可以看到在创建IOS包时如何通过标志启用它。我首先要检查是否创建了IOS文件夹,而没有快速引用。

第三个链接[3]显示Admob的用法只能在飞镖中完成。

关于大小,我不确定是否使用dart并禁用Swift会100%成功。 Flutter vs Swift链接[1]有一个本机Swift应用程序,“比较”了Flutter应用程序,结论是Flutter应用程序的大小是Swift应用程序的两倍。大小分别约为20 MB和50 MB,Flutter最大。

修改

它显示Swift是您使用的插件/模块的一部分,因此不能轻易删除。关于大小,Flutter应用程序通常已经比具有Swift的应用程序大,现在该解决方案将两者结合在一起。如预期的那样,尺寸增大。

[1] https://blog.codemagic.io/flutter-vs-swift/

[2] How to enable Swift support for existing project in flutter

[3] https://flutterawesome.com/easily-implement-ads-into-a-flutter-app/

答案 1 :(得分:0)

这与Flutter无关。每个包含要支持iOS 11及更低版本的代码的iOS应用程序,都需要包含其他Flutter库。

您可以通过将“始终嵌入Swift标准库”设置为false,然后将部署目标提高到iOS 12,在Xcode中禁用此功能。