我知道您专门询问了 Android Studio 的 proguard 和 minifyenabled 功能,但如果目的是专门减少应用程序的大小,您应该配置更积极的链接策略。
- 右键单击android项目
- 在“Build”下选择“Android Build”(或“iOS Build”)
- 为“链接器行为”下拉菜单选择“链接全部”
确保这仅适用于 Release 或 Ad-Hoc 配置,具体取决于您的分发策略。
链接器配置工作流程:
- 在物理设备上运行应用程序以获得所需的配置(发布/临时)
- 测试功能,直到出现“TypeInitializationException”或类似异常
- 将类型/字段/方法添加到配置文件
- 冲洗并重复,直到应用稳定
如果您不喜欢配置文件,也可以使用PreserveAttribute。如果链接器正在剥离您的一个 PCL 中无权访问此属性的类,您可以在该 PCL 中定义自己的属性,称为 PreserverAttribute,因为链接器只是在寻找具有该名称的属性,而不需要具体类型。
链接器通过分析代码路径并删除它认为未使用的引用来工作。如果您使用依赖注入,链接器将无法理解它需要保留哪些引用,因此这可能需要一些时间,但它可以大大减少您的应用程序的大小,您只需执行一次。对于 iOS,您也可以按照上述相同的步骤进行操作。
奖励确保在构建选项中选中“剥离本机调试符号”。它默认设置,但一些心怀不满的同事可能没有选中它。
其他资源:
iOS 上的链接
在安卓上链接