Xamarin iOS应用程序是不合理的膨胀?
我正在使用Xamarin iOS开发一个相当简单的应用程序,我为.app文件获得的最小尺寸是13.5 MB。
我已经执行了所有推荐的优化 – 没有调试符号,LVVM代码生成,thumb-2,链接所有程序集,仅单一体系结构(ARMV7)。
第一个问题是,我的13.5 MB听起来像Xamarin iOS的预期,或者我可能做错了什么?
第二个问题是,Xamarin iOS添加到等效的本机实现(大致)多少额外的大小开销?
第三个问题是,大概有多小的Hello World应用程序可以编译成使用Xamarin iOS?
第四个问题是,本地Hello World应用程序的编译大致有多小?
.dSYM
是包含调试符号的目录。 这不是您作为应用程序的一部分(向最终用户)发送的内容。 请注意,即使在非调试版本中也会生成此问题,因为它允许您对崩溃报告(来自运行发布二进制文件的最终用户)进行符号化。
对于实际的应用程序大小,您需要查看.app
目录。
通过观看今年Evolvevideo高级iOS构建机制,您可以学习相当多的技巧来减少应用程序的大小(和构建时间)。 这也将回答你的其他问题。
正如人们所预料的那样,Xamarin应用在发布模式下要大一些。 作为一个例子,从两个运送应用程序查看我的二进制文件,二进制+ dll大约是12米和18米(我想我需要调查为什么18米的那个更大……)。 我猜想如果我在目标c中做了这些,那么从过去构建原生应用程序的经验来看,它们的大小只有一半。
如果您正在运行调试硬件构建,那么它们是巨大的 。 对于二进制+ dll,上面的12m示例跳转到96M(?!)。 在我检查这个之前,我脑子里已经把它们的大小增加了一倍来处理软件调试器,但我想还有很多其他的废话,我不知道。
- 在UIDocumentPickerViewController中显示自定义UTI的图标
- 本地通知 – 重复快速间隔3
- MKAnnotationView上的UILongPressGestureRecognizer不适用于单点触控
- 在启用素材资源库的情况下修改Xcode 5中的Info.plist的CFBundleVersion
- 自定义后退按钮标题并保持向后滑动手势
- 奇怪的NSManagedObject行为
- Swift JSON错误:无法将types'__NSDictionaryM'的值转换为'NSArray'
- UIActivityViewController – 不能理解这个内存泄漏
- CocoaLibSpotify几秒钟后播放崩溃