IONIC Android apk文件大小太大!如何减少Android应用程式的大小?

时间:2018-06-22 12:40:44

标签: cordova ionic-framework ionic3 cordova-plugins ionic-native

我已经使用Ionic 3开发了该应用程序,现在在生成android apk文件时,它的大小变得太大了。

在进行API集成之前,文件大小为4.8MB ,一旦我开始API交互,我便修改了10页,然后APK文件大小变为 71 MB

我使用过的科尔多瓦插件

TransactionSynchronizationManager

我解压缩了APK文件,以了解发生了什么事 assets / www /文件夹中的 build 文件夹重357MB,其中包含js文件和MAP文件

WWW中的Rest Assests文件夹包含4.5 MB的Css文件

如何减少android apk应用程序的大小?

8 个答案:

答案 0 :(得分:4)

在构建用于生产的APK时,应使用--prod标志。它通过压缩文件来减小大小。

ionic build android --prod --release

答案 1 :(得分:2)

请使用以下命令:
    ionic cordova build android --minifycss --optimizejs --minifyjs --release [note:- "ionic cordova build android --prod --release" command have email pattern matching issue in a form, always give invalid email error hence not used that command]
使用以下链接了解更多详细信息:
https://ionicframework.com/docs/cli/cordova/build/

答案 2 :(得分:2)

运行cordova clean从构建工件中清除项目。

答案 3 :(得分:2)

看起来像个错误(不确定),但是当实时重新加载处于活动状态时,树状摇动功能会导致构建向www文件夹中发射多个块文件,我认为重新加载的次数越多,您所拥有的文件就越多会在那里。

所以您将看到

格式的文件
0.7f0f403f3c9f5914fbce.js
0.7f0f403f3c9f5914fbce.js.map
1.0db885b5a44ebd4ca57e.js
1.0db885b5a44ebd4ca57e.js.map
...and the number goes 0, 1, 2, ... n

您只需要删除www文件夹即可丢弃陈旧的块文件并重建您的应用。

此后,apk大小应合理。

答案 4 :(得分:1)

执行以下步骤

  1. ng build --prod
  2. 在从根文件夹构建之前删除www
  3. ionic cordova构建android --prod --release

答案 5 :(得分:0)

对于那些遇到较新版本的Ionic的人:

Ionic 4.3 中,构建脚本似乎存在错误。如果运行调试版本,然后运行发行版/产品版本,则不会清除www文件夹,并且www文件夹中将包含所有源地图(.js.map)文件,因此最终apk文件。

请参见https://github.com/ionic-team/ionic-cli/issues/3954

答案 6 :(得分:0)

检查sourceMap中的angular.json是否true放在false

答案 7 :(得分:0)

我想我的回答有点晚了,但我有一些我的观察:

减少生产 APK 的方法。

  1. 确保在创建 APK 之前已经创建了生产版本 使用此命令创建 prod 构建

    ng build --prod
    
  2. 现在使用以下命令打开android studio以进行进一步的步骤

    ionic capacitor run android --prod
    //--prod is optional if you have already performed step 1
    
  3. 您可以设置 minifyEnabled 来缩小代码,这也将大大减少 APK 的大小。

  4. 还有一件事我尝试过,一旦您创建了 prod 构建,您就可以从 android 源文件夹中删除未使用的 SVG。我相信这是在资产中添加的,因此在 prod APK 中。 (虽然我不确定第 4 步是否安全,但无论如何它并没有伤害我):)

我已经看到使用第 4 步将大小从 4.2 MB 减少到 3.4 MB ;)

这些是我为减小离子 APK 大小而执行的步骤。

快乐编码!!