当前位置:首页 > app资讯 > Android APP开发资讯

原生APP开发性能可以从哪些方面得到大幅提升?

发布时间:2016-12-2 20:06:04浏览量:

  互联网+的口号已经不只是说说那样了,从现在政界对互联网的态度来说,app开发已经成为趋势,而且据小编这点不成熟的眼光来看,未来3-5年原生app开发还是会需求量庞大的。而开发原生app自然是不能忽略其性能,今天小编就给大家整理了一下哪些方面注意的好了,会让原生app的性能有一个质的变化。


原生APP开发性能可以从哪些方面得到大幅提升?


  想让原生app开发性能大幅提升,可以参考以下几点:

  第一点:规划好应用的功能,做好架构评估

  很多人觉得用户体验来自UI设计,其实不是的!用户体验开始于APP开发初始规划阶段,当有app的开发想法时,要先想好这款APP开发出来主要是为发解决用户的什么需求,而这个需求是不是大部分人,或是一些特定人群的必须点,这样就能提炼出该APP的核心功能,而将这个核心功能做的更利于用户使用,才是用户体验好的一大重点!

  第二点、这是对程序猿说的,要有良好的编程习惯

  这里的良好习惯不仅指代码的易读、易用和易修改性,还包括代码的结构合理、清晰。程序猿们要能让程序结构化、模块化、命名规则清晰易懂,注释方法明了,文本的格式也要规范,这样可以让开发更事半功倍。尤其是在app有二期需求时更提高程序的执行效率。

  第三点、要记得改善程序启动和响应的时间

  为了加快APP响应速度,我们可以在UI线程上创建足够的对象,以便完善公共API功能。然后将功夫用到后台线程上,将费时的操作从主线移动到一个单独线程中,缓存从磁盘存储打开和阅读,客户端证书在后台加载。Cookies反序列化和解码在后台。通过这些改变,UI将更快地出现在屏幕上。

  第四点、使用最新版本的软件开发SDK、API

  现在安卓、苹果的平台在飞速发展,提供的功能也在不断的更新,一些功能已经被全新的功能完全替代,而使用最新的API可以让app的性能更稳定。而这也可以帮助程序猿们编写出更稳定、响应速度更快的应用程序。

  第五点、使用SuperWebView,让APP支持动态更新

  对于已经上线了的APP,在更新新功能时建议使用APICloud平台的SuperWebView功能,基于SuperWebView开发的功能支持动态更新,可以绕过应用商店的审核,用户无需重新下载APP,就能让新功能悄无声息的更新到用户手机上,让原生APP的新功能开发变得更高效。

  第六点、使用Android性能调优利器StrictMode

  StrictMode意思为严格模式,是用来检测程序中违例情况的开发者工具。最常用的场景就是检测主线程中本地磁盘和网络读写等耗时的操作。使用严格模式,系统检测出主线程违例的情况会做出相应的反应,如日志打印,弹出对话框亦或者崩溃等。换言之,严格模式会将应用的违例细节暴露给开发者方便优化与改善。

  第七点、开发中可以适当使用Hierarchy Viewer工具

  Hierarchy Viewer可以帮助调试应用布局,可以让程序猿选择设备或者模拟器上正在运行的进程,然后显示其 Layout 的树型结构。每个块上的交通灯分别代表了它在测量、布置和绘画时的性能,帮程序猿们找出瓶颈部分。

  第八点、注意优化app应用的布局

  布局虽然是UI工程师给出,但是布局的顺序决定权还是在程序猿手里的。简单的布局可以让app应用使用起来更轻松流畅,不少人推荐使用Lint工具可以查看View层级哪些地方可以优化。Lint可以帮助程序猿找到不必要的控件嵌套以及缩减布局资源的其他方法,以尽量减少资源的使用。Lint让你可以了解哪些布局控件可能是多余的或不必要的。控件越少、布局层次越浅,性能就越好。

  第九点、优化应用的耗电量

  现在人普遍会有一种“病”:手机还有60%电的时候就已经觉得电量不足了!所以如果让用户发现你的应用很耗电,那就不要怪用户马上卸载应用了。而据分析应用之所以耗电,是因为使用了手机的某种资源。根据谷歌官方统计,典型的耗电场景有调用GPS定位、网络传输、屏幕亮度、CPU频率、内存调度频度、wake_locker时间和次数,如果你的应用能优化以上几点,就能降低耗电风险。

  第二点、规划应用的离线体验

  现在人普遍还有一种“病”:流量永远不够用!所以当用户无法连接WiFi或其它网络信号时,用户使用APP时仍然能够有极佳的可用性,那一定能给你的APP加不少印象分。所以在规划APP应用时,应该将这一设计方法考虑其中,在运营模式、开发需求满足的情况下,可以将离线使用这项考虑成熟。

  以上十点不成熟的小建议也许很多程序猿哥哥已经看过了,但是(敲黑板,划重点),这十点依然还是非常重要的!如果能做到出色,那么相信你开发出来的app应该是流畅性能非常高了(撒花)!