一种简单的 Android UI 优化方法

   相比于iPhone 用户界面,Android实在是有不少可以优化的地方,这里我们先来简单的研究一下如何在不大规模修改Android源码的情况下来优化Android的UI。

       将当前的Android UI 框架进行简化并标示出UI优化思路,如下图所示:

 

       基本的思路就是: 将Android 代码用于实现 java ui api的jni层代码进行优化,对上层提供的jni接口不变,但是在这些jni接口的实现内部我们可以添加一些UI的特效操作。

  优点:

1) 透明性: 因为是在jni层进行UI优化,所以对于上层的app 依然是调用android java api 来进行ui的显示,并不需要关心底层的UI 是如何优化的。

2) 性能: 在UI优化的jni代码中直接使用C/C++来操作opengles/skia api 来进行UI的渲染,可以充分保证性能。

3) 非侵入: Android内部用于提供给上层java api 的jni实现以动态链接库的形式提供。基于这一点,优化后的ui jni层也可以使用动态链接库的形式提供并提供并与原生的jni动态链接库一致的接口,这样,当然后使用优化之后的UI效果时,只需要将Android对应的原生动态链接库进行替换即可,而使用优化的UI效果的上层android java app并不需要做任何的改动,简单高效。

  4) 易于操作: 基于这种方案,当需要进行UI优化时,并不需要刷机,只需要替换系统中对应的组件即可。

  缺点:

  1) 实现难度: Android 底层用于java ui实现的jni层的实现有一定的代码量,对这些代码的修改和调试有一定的难度。

  2) 可移植性: Android当前的版本一直在演进中,底层的jni ui 实现也对应有变动,这使得优化工作必须长期同步进行,当然了,并没有一劳永逸的解决方案了:)

 

 

 

 

posted on 2011-12-27 11:43  xwroyal  阅读(1085)  评论(0编辑  收藏  举报