Android特性

Android是Google公司基于Linux内核的开源操作系统,主要用于移动设备,目前在智能手机市场占有重要份额。Android应用层使用Java语言开发,运行于Dalvik虚拟机,每个Android应用运行在独立的虚拟机中,这保证了各应用间资源的保护和线程安全。

Android架构简图

Android编程方式:Java,NDK,HTML

通常使用Java语言开发Android应用,但也可借助其他语言,如Android NDK(Native Development Kit)开发模式,可用Java调用C语言库,此外HTML也可以包装成Android应用。

三种方式都有各自的特点,Java为Android原生支持的语言,便于开发本地应用,随着Android系统的不断优化,其效率也在不断提升,TWaver Android就使用Java开发;Android NDK开发相对复杂,但可借助C语言的性能优势,改善程序效率,并且C语言也具有很好的跨平台性,在游戏领域应用普遍;而Html方式也逐渐成为趋势,Web App可用于实现跨浏览器,跨平台的应用。

Android性能测试

Android设备很丰富,系统升级也很频繁,Google对Dalvik虚拟机的优化和Android应用架构的改善有长足的进步,如Android 2.1升级到2.2时引入了JIT(just in time)机制,使应用效率提升了2-4倍,而Android 4.1黄油计划对UI流畅度也有作出了贡献,Google的努力值得赞扬,但一方面也说明此前Android效率的低下,而未来进步的空间还有多少?我们用数据来说话。下面我们将分别在Android平板与电脑下对Android Java与Sun Java作对比测试,以了解两者的性能差异和各自适用的场景。

Dalvik VM与Sun Java VM的性能差异

测试设备分别为:MacBook Pro(2.26 GHz Intel Core 2 Duo),Google Nexus 7(1.3GHz四核Tegra 3)

软件环境:Java 1.6.0_37和Android 4.2.1

测试内容:包括数学运算,集合操作(List和Map操作)等基本API

因为同为java语言,测试代码基本一致,详见TWaver Android Demo中的PerformanceDemo.java,这里只列出结果:

Android 4.2.1耗时是Java 6的12 - 50倍,此外其他语言(Flex,JavaScript)在电脑上的运行效率也大大优于Nexus 7平板。

另外看看HTML的情况,Chrome浏览器移动版与桌面版有四倍的差距,这基本上反映了硬件的真实水平,Android中JavaScript语言相比原生的Java性能更优,至少对于Chrome浏览器是如此,当然这个测试只是反映语言的基本性能,从开发的便易上看,Java还是最佳选择。

测试的结果表明相比PC,android设备在性能上尚有明显差距,而Dalvik VM尚不能充分发挥硬件的性能,在开发应用时需要意识到这点,以达到用户体验与功能上的平衡。

编程语言各平台下的性能差异

TWaver Android的定位

TWaver图形组件在桌面上有很多开发语言可选择,独移动平台上空缺,虽然TWaver Html5也能运行在Android和iOS之上,但要达到本地应用的体验绝非易事,TWaver Android定位于移动平台,用于图形化的数据展示,采用了全新设计架构,提升了UI效率,以应对移动设备自身性能的不足,全新的多点触控交互模式,漫游操作,实现流畅的交互体验。

TWaver Android的数量级支持

相比TWaver其他版本,TWaver Android架构做了变化,数据模型上提高了数倍效率,解决了Link, Group的性能问题,UI呈现上优化了延迟无效机制,交互上完全适应触控操作,综合测试,对于Node,Link,Group混合使用的场景,一千数量级在Nexus 7平板上可以流畅的操作,考虑到平板硬件差异和Android虚拟机的效率问题,这样的结果还是让人满意的,可以有广泛的应用场景。

Nexus 7中,不同网元数量级下拓扑图的加载时间对比

TWaver Android推荐平台

考虑到更佳的展示效果,大屏幕或许更便于数据的图形化展示,所以TWaver推荐使用平板,支持Android 3.0+以上版本(该版本支持Drag and Drop),实际上TWaver Android内部主要使用Nexus 7 / 10以及三星平板作开发测试与调优。当然这并不意味着TWaver Android不能用于手机或者低版本的Android设备,TWaver Android Demo在Google Nexus S手机上也可以流畅的运行,如果需要兼容Android 2.*较低版本设备,你可以申请TWaver Android的精简版本。

TWaver Android Demo运行于Nexus 7 和Nexus S

更多相关文章

  1. Android应用程序资源——Drawable资源概述
  2. Android应用安装错误:INSTALL_FAILED_MEDIA_UNAVAILABLE
  3. ( 转)关于Android的nodpi,xhdpi,hdpi,mdpi,ldpi
  4. Android高手进阶教程(三)之----Android(安卓)中自定义View的应用
  5. Android程序员指南(13)
  6. Cortex-A8和Android应用开发视频教程
  7. 在Android中加入GOOGLE统计系统
  8. Android(安卓)渗透测试学习手册 第一章 Android(安卓)安全入门
  9. Android(安卓)开发一定要看的15个实战项目

随机推荐

  1. java Android(安卓)OKHttp HTTPS 请求证
  2. Android学习之旅(三)----Activity及其生
  3. Android(安卓)TabLayout简单使用
  4. android小项目----基于mnn的mtcnn人脸检
  5. Android(安卓)完全退出当前应用程序
  6. Android(安卓)4高级编程(第3版)
  7. Android(安卓)开发 Tip 15 -- can be rep
  8. Android实现可复用的筛选页面
  9. Android探索:全面分析Activity的生命周期&
  10. android scrollview 滑动到顶端或者指定