Android 上的 NativeScript Angular Basic 应用程序大小 > 160 MB

标签 nativescript nativescript-angular

基本 HelloWorld Nativescript-Angular 应用程序大小 > 160 MB(推送到 Android 手机时)。
当推送到 Android 手机时,基本 HelloWorld Native-Android 应用程序大小 < 4 MB。

为什么 Nativescript-Angular 应用程序如此之大以及可以采取哪些措施来减小其大小..?

重现步骤:

  1. tns 创建 HelloWorld --ng
  2. 连接手机
  3. tns 运行 android
  4. 设置 -> 搜索“应用程序管理器” -> 点按“应用程序管理器”
  5. 点击 HelloWorld 应用程序。
  6. 点按存储空间即可查看应用的大小。

最佳答案

这在这里很正常,因为 native 脚本与node_modules一起使用,并且在构建应用程序时,它的依赖项被添加到构建中。

NativeScript Android 运行时由提供核心功能的几个主要部分组成。其中包括:

Google JavaScript 虚拟机的嵌入式版本 - V8 - 用于运行 JavaScript。 C++ 层告诉 V8 如何处理所有 Android API。 Java 层,将 native C++/JavaScript 与 Android API 粘合起来(反之亦然)。 前两层是 native 库(编译为机器代码),它们依赖于 CPU 架构,又名 ABI(应用程序二进制接口(interface)),与动态 (JIT) 编译的 Java 和 JavaScript 不同

要优化性能和包大小,您可以使用快照插件。这仅适用于发布版本。您需要提供 --env.snapshot 标志以及其他发布参数:

tns build android --bundle --env.snapshot --release 

关于Android 上的 NativeScript Angular Basic 应用程序大小 > 160 MB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53752988/

相关文章:

android - 我的 Android 设备无法使用 tns 预览扫描 CLI 中生成的二维码

NativeScript FontAwesome 5 免费版在 iOS 中用实体字体覆盖常规字体

ios - 无法以编程方式设置网格布局高度

nativescript - 删除了 hooks 文件夹

nativescript - 如何在 NativeScript 中嵌套 ListView

android - 我可以分享到我的 NativeScript 应用程序吗?

Nativescript - 单击按钮时打开 SideDrawer

Angular 2 Nativescript 网络/移动应用程序

angular - Nativescript:无法覆盖模板中的 ActionBar

java - 在 NativeScript 中使用 Android 原生代码 (JAVA)