nativescript - 如何在 nativescript 角度应用程序上分析导航滞后和内存不足问题?
问题描述
我为 android 构建 nativescript angular 应用程序,具有如下依赖项
"nativescript-angular": "^7.2.2",
"nativescript-background-http": "^3.4.0",
"nativescript-bitmap-factory": "^1.7.1",
"nativescript-camera": "^4.2.0",
"nativescript-cardview": "^3.1.1",
"nativescript-directions": "^1.3.0",
"nativescript-drawingpad": "^3.0.4",
"nativescript-fancyalert": "^3.0.6",
"nativescript-filterable-listpicker": "^2.2.3",
"nativescript-fresco": "^5.2.0",
"nativescript-geolocation": "^5.0.0",
"nativescript-imagepicker": "^6.1.2",
"nativescript-modal-datetimepicker": "^1.1.12",
"nativescript-ngx-shadow": "^6.4.0",
"nativescript-photoviewer": "^1.5.0",
"nativescript-plugin-firebase": "^8.0.0",
"nativescript-theme-core": "~1.0.4",
"nativescript-ui-autocomplete": "^4.0.0",
"nativescript-ui-chart": "^4.0.0",
"nativescript-ui-listview": "^6.0.0",
"reflect-metadata": "^0.1.13",
"rxjs": "^6.4.0",
"tns-core-modules": "^5.2.2",
"tns-platform-declarations": "^5.2.2",
"typescript": "~3.1.1",
"zone.js": "^0.8.29"
这些应用程序包含 5 个选项卡和按钮来拍照。有2个主要问题
- 当用户从一个选项卡导航到另一个选项卡时,应用程序将随机显示“peekState”错误。
- 当用户使用相机拍摄 2 张或更多照片时,应用程序将崩溃并出现 java.OutOfmemory 异常
以下是我已经尝试过的一些更改
- 使用 BmpImageFactory 将相机中的图像调整为更小的尺寸
- 使用 Nativescript Fresco 加载图像
- 清空用于保存 imageSource 的变量
- 从标签导航中删除动画
请建议如何找到导航滞后和内存不足问题的原因?
解决方案
您可以使用时间线视图来分析您的应用程序,以获得一个 HTML 视图,了解您的应用程序中需要花费大量时间的内容。
对于图像,您是否将其保存在磁盘上?您可以将内存限制为一张图片,在保存之前调整其大小以减少使用的磁盘空间大小,然后在需要时使用单独的流程来使用它。
您还可以使用 Android Studio 分析 RAM 使用情况,以查看您的应用程序中是否存在大量内存泄漏/异常内存使用情况。
推荐阅读
- javascript - 仅在活动组件中打开的垫子对话框
- firebase - 如何在 Firebase.com 上报告网络钓鱼
- database - 如何在 PostgreSQL 中处理大型数据集?
- python - 如果输入剂量相等,则重新启动代码
- node.js - 在 Sequelize 中使用 map 创建一个新的普通对象
- c++ - 类公共函数引用私有数组
- c++ - 使用指针的分段错误
- json - 如何从python3中的json文件中读取xml部分?
- c# - 在 C# 中合并两个 XML 文档
- google-cloud-platform - 连接到托管在 Compute Engine 上的服务不起作用 - 无法访问站点/我已添加 http(s) 标签