给Android应用开发者的10个建议

softyun3年前软件教程76

随着移动平台的发展和其应用的不断改善,质量成为决定成败的关键。用户要求他们选择安装的应用响应快、性能好,如果某个应用不能提供卓越的功能和稳定的用户体验,那这样的应用注定会被很快卸载。



尽管现在Android智能手机和平板电脑的运行速率越来越快,但开发者仍需牢记,应用的运行环境仍受到电池和处理器等诸多资源的限制。以下是如何为应用“瘦身”的十条建议,以便能在当前和以后的所有Android设备都能运行出最佳效果。

1)首先要有良好的编码习惯

一个优秀的开发者应该善于运用常识、完善的算法和标准设计模式。要有资源意识,打开了就要记得关闭,尽量做到晚获取,早释放。这些由来已久的编码准则同样适用Android应用开发,尤其是使用基础设备服务时。

2)让阻塞操作远离主UI线程

通过使用AsyncTask、线程、IntentService和自定义后台服务,保证应用的灵活性。使用加载工具简化游标等长时间加载数据的状态管理。当有其他程序运行时,不能让你的应用滞后或中止。

如果一个操作需要消耗较多时间和资源时,取消该操作,换成异步处理,这样应用就能保持响应,用户可以继续各种操作。该方法适用磁盘读写、访问内容提供方、数据库和互联网,以及解析和其他需要花费较长时间的任务。

3)使用最新的Android SDK版本和API

使用Android平台的最新产品,保证你的应用紧跟Android的更新步伐。随着Android平台的不断发展,部分功能可能被弃用或被更好的功能 取代,核心API接收了bug修复和性能改进,新API有助于开发者编写出更稳定的应用。要明白最佳的做法总是随着时间的推移而变,聪明的开发者应该总是 站在整个平台的最前沿。

4)考虑使用StrictMode

从Android 2.3开始提供了一个新的类StrictMode,该类可以用于捕捉发生在应用程序主线程中耗时的磁盘、网络访问或函数调用,可以帮助开发者改进程序,使主线程处理UI和动画在磁盘读写和网络操作时变得更平滑,避免主线程被阻塞。

5)发布前禁用或尽量减少调试

如果开发周期较长,你很可能在应用中内置了一些日志或调试代码,在发布前确保这些功能已经最小化或完全禁用。

6)确保UI布局简单优雅

简单的屏幕不仅方便阅读,还能加快加载速度。与其在一个单一屏幕上堆砌太多不必要的功能,不如花时间去开发优雅的用户界面。简单优雅的UI不仅能提高应用性能,还能提高用户使用该应用时的效率。

7)根据目标设备调整应用资源

为尽可能高效地被加载,需要根据具体设备的配置调整相应资源,尤其是图片资源。为使应用包文件合理适用不同设备,首先可只添加运行该应用需要的核心资源,然后再根据具体设备下载相关内容。

8)使用Hierachy Viewer可视化调试工具

Hierachy Viewer能很方便地在开发者设计,调试和调整界面时,快速定位问题,解决问题,提高开发效率。

9)使用layoutopt进行布局优化

Layoutopt是一款简单的命令行工具,可帮助找到不必要的控件嵌套以及缩减布局资源,从而使应用变得可能“苗条”。控件越少、布局层次越浅,性能就越好。

10)使用Traceview及其他Android工具进行分析

Android SDK随带了很多用于应用分析的工具,其中最受欢迎的是Traceview,这款图形工具可以帮助调试和找到应用中的性能瓶颈。

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

移动app的缺点是什么

21世界的今天,没有什么可以阻挡移动互联网的发展,其发展之势无人可挡。当在飞速发展的同时,也同时引发出一系列的问题。app定制服务商表示,其不仅有优点,同时也伴随着一些缺点。那移动app的缺点是什么?...

滴滴单子少什么原因

以滴滴6.0.10版本为例,滴滴单子少的原因是:1、车主的服务分低,派单的主要依据就是车主的服务评价。2、手机网络信号不好,信号不好可能导致,在派单时没检测到。3、非专职司机,滴滴在派单时,会偏向于专...

ajax同时提交复选框和单个值

Ajax技术是一种能够实现页面无刷新的前端技术,它可以使用户在不重新加载整个页面的情况下与服务器进行通信和交互。本文将介绍如何使用Ajax技术同时提交复选框和单个值,并给出具体的代码示例和详细说明。假...

美团我的钱包在哪找

以美团v11.2.402版本为例,美团我的钱包找到的方法如下:1、在手机上打开美团app。 2、在主页面点击我的。 3、在我的页面即可看到我的钱包。 美团网在河北省省会石家庄市金石工业园区开设北京总部...

php mysqliinsertid

PHP mysqli_insert_id()函数是MySQLi库中的一个函数,它的作用是获取上一次插入操作的自动增长ID值。具体来说,当我们向数据库表中插入新的数据行时,自动增长列的字段值将会自动递增...

css圆形锯齿上边框

CSS圆形锯齿上边框是一种常见的UI设计元素,可以增强网页的视觉效果,提高用户体验。下面我们来讲讲如何用CSS实现这个效果。// HTML代码<div ><p>这是一个例子文本...