有没有想过减小您的应用 (APK) 构建大小或提高其性能?如果是,那么让我们学习使您的应用程序成为最佳应用程序的基本要素!
什么是应用性能?🤔
应用程序性能定义了构建发布后应用程序的整体体验和总大小。人们会使用那些体积更小、在低端设备上性能更好的应用程序,这是很常见的事情。
因此,对于开发人员来说,向客户(用户)提供紧凑型高(流畅)性能的应用程序变得非常重要。
但是这个问题也被新开发人员或一些有经验的开发人员忽视了,因为这个话题被低估了。
5个要点
使用 R8 发布 APK 🔐
它以缩小应用程序尺寸而闻名。但这是怎么发生的?此 R8 与 Android Proguard 一起使用并删除所有不必要的函数、类、资源、缩短变量/对象名称等。这也使您的代码免于被逆向工程,因为后者会被 R8 内部转换的变量名称混淆。
为您的项目开启 R8 支持
使用 android Profiler
该工具内置于您的 android studio 中,具有在使用此应用程序时提供网络、快速或慢速、内存和电池统计信息的强大功能。它类似于 Chrome 开发工具。它允许开发人员分析整个应用程序并找到应用程序在哪里使用了比需要更多的资源。
它看起来像这样(只需在模拟器上运行您的应用程序或从系统中选择任何文件):
缓存
当我们发出网络请求并在我们的应用程序上获取远程存储的数据时,它需要一定数量的资源来执行相同的操作。因此,如果一次又一次地获取数据,就会造成很大的带宽消耗和资源浪费,因为我们一次又一次地获取相同的数据。但是如果我们在第一次调用后将数据存储为缓存,资源消耗将大大减少,最终会产生更好的应用程序和良好的用户体验。
使用一个好的库来缓存图片 URL,比如 Glide。
您可以在 google 上找到许多有关 Rest API 的数据库缓存等资源。
尽可能使用 Fragments,而不是制作活动
与活动相比,片段可以以较低的 RAM 消耗运行并且更轻。它有助于应用程序在每台设备上更好地执行,使其对用户更具吸引力。
StringBuilder 代替 String
众所周知,字符串是不可变的,所以如果我们将另一个字符串连接到它,它会产生许多低效的垃圾操作。但在 StringBuilder 的情况下,同样的连接将花费非常少的时间来处理。所以拿这个小贴士来说,如果你想要它的实际演示,请使用 Android Studio 的 CPU 可视化工具,查看执行时间并进行比较。
奖励积分🤩
高效使用线程
主要有两种类型的线程:
- 用户界面线程
- 后台线程
如果我们在主(UI)线程上运行任何计算、网络请求、从本地数据库查询数据、从远程 URL 加载图像或解析 JSON,则会阻止主线程进一步处理。因此,始终建议在后台线程中进行上述进程。
在现代 Android 开发场景中,这件事可以通过Coroutines轻松完成。使用 Jetpack 组件非常简单。
希望你在这里学到新东西🚀。尝试构建您的下一个项目,牢记这些要点,您将看到大小和性能发生巨大变化。
感谢您阅读。
链接:https://learndroid.hashnode.dev/5-simple-steps-to-optimize-your-next-android-application-in-2022
网友评论