首页登陆欢迎您!
首页登陆 > 操作系统 > 调治将养 Android* x86 应用程序的法门甚至要利用的工具

调治将养 Android* x86 应用程序的法门甚至要利用的工具

时间:2019-12-21

转载自:随着手机平台的发展和所提供应用的提升,质量成为应用成功的最重要因素。如果那些应用无法提供强大的功能和稳定的用户体验,那就会很快被用户卸载。开发者需要记住的是,虽然Android智能手机和平板电脑的速度日益提升,但其应用仍然运行在资源有限的环境中,其电池及处理器性能与最新的台式电脑、手提电脑仍存在差距。以下是某些优化应用运行效果的方法:我们先来阐述某些让应用反应灵敏的编程技巧。技巧1:从优秀的编程开始要采用已为用户所接受的运算法则和标准的设计样式,这些被人们长期使用的编程法则也同样适用于Android应用,尤其当这些应用使用内在设备服务时。比如,假设你编写的应用需要以地理定位服务为基础。只需要在必要时开始注册进行位置更新,在无需更新信息时,确保应用停止更新进程。这会帮助节省设备的电量和系统处理器的负担。技巧2:保持应用的灵活性通过使用AsyncTask、IntentService或自定义背景服务来保持应用的灵活性。使用加载器来简化加载时间较长数据的状态管理,比如光标。不可让应用在其他进程进行时显得缓慢或完全静止。如果某些操作需要一定的时间和资源,应当将这个进程单独分离出来异步处理,这样你的应用才能够保持流畅的运行。可以运用这种方法的操作包括:磁盘读写,访问内容供应方、数据库和网络,其他需要较长时间的任务。技巧3:使用最新的AndroidSDK版本和API保持应用的更新,使用Android平台提供的最新内容。随着Android平台的发展,它也在逐步改善中。某些功能被移除,或者替换成更好的选项。其核心API中的漏洞已修复,整个API性能已得到提升。该平台已引入装载器之类的新API,帮助开发者编写更为稳定和反应灵敏的应用。Android3.0应用支持硬件加速,你可以加以应用。应当理解的是,最佳的表现情况会随着时间逐渐改变。睿智的开发者会更新平台发布的最新内容和API。技巧4:检查StrictMode你可以使用称为“StrictMode”的AndroidAPI来查找编程中的问题。StrictMode会帮助你识别应用是否正在耗费内存,也可以帮你检查应用是否正在尝试开展漫长的模块化操作。StrictMode类与Android2.3同期发布。技巧5:在发布之前停用或最小化调试和诊断你在Android应用的开发中可能会将某些调试代码构建其中。在应用发布之前确保这些功能被最小化或完全停用。接下来,让我们来讨论如何用优秀的用户界面设计原则让你的应用加载速度更快。技巧6:保持布局简洁自然简洁自然的布局会加快加载速度。不要让屏幕布局中充斥过多不必要的内容。花点时间开发用户可以有效使用的简洁用户界面,不要将过多的功能性内容塞入单个屏幕中。这不仅对应用表现有帮助,而且会帮助用户更有效地使用应用。分割内容可以帮助划分用户界面功能性,同时不牺牲应用在各种不同设备上的灵活性。技巧7:根据目标设备调整应用资源根据特定的设备配置来调整资源,这样它们就能够有效地加载。在图像资源方面,这个显得尤为重要。如果你的应用中有大型的图片资源需要加载,那么要做好调整。另一个技巧是,当以许多种设备为目标时,保持应用包文件大小合适,只需要在其中包含应用运行所需的核心资源即可,然后让用户根据具体设备下载应用其他内容。技巧8:使用HierarchyViewer工具HierarchyViewer工具可以帮助你解除应用布局中的漏洞。它还提供了许多有价值的信息,比如每个View控制需要多长的时间。找到问题所属领域,这样解决问题会更加简单。技巧9:使用layoutopt工具layoutopt工具是个简单的命令行工具,可以帮助你识别不必要的控制和其他让你布局资源崩溃的事项,提升其性能。它可以帮助你找到不必要的多余布局控制。较少和较浅布局可优化应用运行性能。最后,在自认为应用达到最好状况时,对其进行测试。技巧10:使用Traceview和其他Android应用压缩工具AndroidSDK中有许多可以压缩应用的工具。可能最流行的工具就是Traceview,这个图像工具可以帮助你调试和找到应用的性能问题。结语目前有许多方法可以让你的Android应用运行加速。有些涉及到使用某种具体的运算法则,其他依靠某些真正的调试和运行监管技术。Android平台中有许多种免费的工具可以用来帮助跟踪和调整应用中的表现问题。你已经知道了以上10种技巧,现在可以尝试使用它们!

图片 1

安卓开发中的安卓程序效率很重要,如果你做出一款登录很慢,打开很延时的产品,相信很多人都不愿意去使用,那么如何提高Android程序效率呢,也就是如何来优化Android的性能呢?本文提供给你一些想法,希望能够给广大安卓开发者带来灵感:

1.简介众所周知,Android*开发人员头顶许多称呼:设计员、程序猿等,并且通常会不可避免地被称为故障检修工。代码中的错误无法避免,因此无论您是否一开始就造成错误,了解调试工具以及如何迅速而有效地跟踪并解决错误都很重要。鉴于此,如今的Android开发人员必须掌握有效的调试技巧。本文提供了Android应用程序调试工具的简单教学,用于帮助AndroidSDK以及相关工具的新手迅速入门,并在Androidx86平台上更有效地解决故障。2.SDK应用程序调试工具AndroidSDK提供了试应用程序所需的大多数工具。如果希望进行诸如单步调试代码、查看变量值以及暂停执行应用程序的操作,则需要兼容JDWP的调试程序。如果使用Eclipse,则已附带兼容JDWP的调试程序,无需设置。如果使用其它IDE,则可使用其附带的调试程序并将调试程序与特殊端口连接,使其可以和您设备上的应用程序虚拟机通信。如果使用ADT插件在Eclipse中进行开发,则可使用内置的Java*调试程序并结合DDMS来调试应用程序。为了便于访问调试程序和DDMS,Eclipse以视图形式显示调试程序和DDMS功能,这些都是自定义的Eclipse视图,根据您所在的视图显示特定选项卡和窗口。Eclipse还可负责为您启动ADB(AndroidDebugBridge)主机守护程序,从而无需手动运行该工具。如果使用其他IDE进行调试,则可使用AndroidSDK提供的所有调试工具,例如ADB、DDMS、Java调试程序等。 图1.Dalvik调试监测程序服务器借助DDMS,开发人员可查看进程的堆区使用情况、跟踪对象的内存分配、使用模拟器或设备的文件系统、检查线程信息、获取方法配置、使用网络流量工具、使用LogCat跟踪代码信息以及模拟手机操作和位置。如欲了解更多信息,请参阅。AndroidSDK还提供HierarchyViewer和layoutopt帮助开发人员调试布局问题。HierarchyViewer应用程序可让您调试并优化您的用户界面(UI)。它以可视方式呈现布局的视图层级,提供放大的显示视图。 图2.HierarchyViewerViewHierarchy窗口显示形成您设备上或模拟器上运行的活动的UI的视图对象。您可以用它在整个视图树的上下文中查看各个视图对象。对于每个视图对象,ViewHierarchy窗口还显示渲染性能数据。在选择节点时,视图的额外信息出现在节点上方的小窗口中。在单击其中一个节点时,可看到有关图像、视图计数和渲染时间的信息。 图3.查看对象信息窗口PixelPerfect是一个工具,用于检查像素属性并通过设计图排布用户界面。PixelPerfect窗口显示模拟器或设备上可见的屏幕的放大图像。在该窗口中,可检查屏幕图像中各个像素的属性。也可使用PixelPerfect窗口根据位图设计帮助排布应用程序的用户界面。 图4.PixelPerfect窗口layoutopt工具可让您分析XML文件,该文件定义应用程序的用户界面以查找视图层级中的不当之处。要运行工具,可打开终端并从SDK工具/目录启动layoutoptxmlfiles。xmlfiles变量是以空格分隔的要分析的资源的列表,可以是未编译的资源xml文件或这些文件的目录。工具会加载指定的XML文件并根据一组预定义的规则分析它们的定义和层级。下面是来自工具的输出示例:$layoutoptsamples/samples/compound.xml7:23Theroot-levelFrameLayout/canbereplacedwithmerge/11:21ThisLinearLayoutlayoutoritsFrameLayoutparentisuselesssamples/simple.xml7:7Theroot-levelFrameLayout/canbereplacedwithmerge/samples/too_deep.xml-1:-1Thislayouthastoomanynestedlayouts:13levels,itshouldhave=10!20:81ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless24:79ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless28:77ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless32:75ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless36:73ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless40:71ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless44:69ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless48:67ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless52:65ThisLinearLayoutlayoutoritsLinearLayoutparentisuseless56:63ThisLinearLayoutlayoutoritsLinearLayoutparentisuselesssamples/too_many.xml7:413Theroot-levelFrameLayout/canbereplacedwithmerge/-1:-1Thislayouthastoomanyviews:81views,itshouldhave=80!samples/useless.xml7:19Theroot-levelFrameLayout/canbereplacedwithmerge/11:17ThisLinearLayoutlayoutoritsFrameLayoutparentisuselessTraceview是执行日志的图形化查看器,这些日志在您使用调试类记录代码中的跟踪信息时创建。Traceview可帮助您调试应用程序并概述其性能。Traceview可加载日志文件并在窗口中显示其数据,该窗口如图5和图6所示以两个面板将您的应用程序可视化:请点击这个链接阅读详细介绍:

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能很方便地在开发者设计,调试和调整界面时,快速定位问题,解决问题,提高开发效率。

上一篇:在ViewFlipper中,在2个显示ListView的layout之间进行左右滑动,该如何处理? 下一篇:没有了