【问题标题】:Reduce APK size in Xamarin.Forms, APK size 80MB减少 Xamarin.Forms 中的 APK 大小,APK 大小 80MB
【发布时间】:2019-02-08 15:08:10
【问题描述】:

无法将 xamarin apk 大小减小到 80 MB 以下,请执行以下操作:

  • 启用proguard
  • 配置:发布
  • 平台:活动(任何 CPU)。
  • 启用 Multi-Dex:true
  • 启用开发人员检测(调试和分析):false
  • 链接:SDK 和用户程序集(也仅尝试过 sdk 程序集)
  • 支持的架构:全选

Visual Studio 社区 2017 版本:15.9.6
在这方面需要一些帮助...

【问题讨论】:

  • 选择所有架构将创建一个更大的 APK
  • @Jason 现在只启用 armeabi-v7a .. 仍然没有减少
  • @VipinKrishna ?减少?我要求您解压缩 apk,以确定各种文件夹的分解情况,以确定导致 80mb 大小的原因。
  • 您确定没有使用任何不需要的 Nugets 吗?当涉及到构建的大小时,它们可能会令人讨厌和痛苦。
  • 您已经“尝试”了很多方法来减小 APK 大小,但在此之前,可能值得先了解 APK 膨胀的原因。遵循@SushiHangover 的建议并使用windirstat.net 之类的工具来了解是什么在您的APK 中占用了这么多空间。

标签: xamarin xamarin.forms xamarin.android


【解决方案1】:

删除所有不需要的程序集和图像资源,它应该可以解决您的问题,当涉及到您的构建大小时,它们可能会令人讨厌和痛苦。

也只选择您的发布版本所需的 Abi,根据我的 armeabi-v7aarm64-v8a 应该就足够了。

同样,这也无济于事,因为SushiHangover 建议解压缩 Apk 并检查导致问题的原因,同时检查 windirstat,就像建议的 Jon 一样。

在查询时还原。 祝你好运

【讨论】:

    【解决方案2】:

    第一个解决方案是使用 Link 用户程序集和 SDK。如果您完全无法链接您的用户程序集,那么我邀请您执行以下操作:

    在项目选项中选中“为每个选定的 ABI 生成一个包 (.apk)”。这将为每个处理器平台创建更小的 apk。

    现在有可能您仍然无法发布任何内容,因为 VS 会尝试上传 80mb 的通用 apk 以及专用平台的较小 apk,从而导致“apk too big”错误。

    因此,在您签署 apk 以进行发布后,打开分发文件夹,然后打开“已签名 apk”子文件夹。在里面你会看到为不同平台构建的apk,图片会是这样的:

    现在打开谷歌开发者控制台并创建一个版本,然后手动上传一个一个的apk,除了巨大的。然后你就可以走了。

    我想在我们获得带有 VS 2019 或更早版本的新编译器/链接器之前,我们只能使用此选项。

    【讨论】:

    • 那里不需要的 nugets; livexaml,gorilla,modernhttpclient,xlabs,aiforms 等被卸载..现在 apk 减少到 21 !!!
    • 对我来说,由于使用 AOT 的大小,atm 的大小不可避免地增加。看起来 xamarin 团队在减少启动时间方面做了很多工作,甚至在应用程序启动部分也做了很多工作,所以希望将来会有所改变。
    • @NickKovalsky 对于新手提问者的许多首字母缩写词,你不觉得吗:P
    猜你喜欢
    • 1970-01-01
    • 2017-03-02
    • 2021-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多