基于Android系统的特征值定义和使用方法及系统的制作方法
【技术领域】
[0001]本发明涉及Android技术领域,尤其涉及基于Android系统的特征值定义和使用方法及系统。
【背景技术】
[0002]Android是谷歌推出的一种智能的移动终端操作系统。在Android实际开发过程中,某些功能的特征值往往会在不同的语言中使用,比如说,有些特征值不但会在编译系统中用到,而且还会在java语言和C/C++语言中用到。由于不同语言中定义的变量是不能通用的,因此,在这种情况下,就需要分别在用到的语言中定义这个特征值,而这些特征值的含义与数值都是一样的。现有的这种方法带来的最大问题就是后续的管理和维护上的不便,由于特征值的定义散落在各处,又毫无规则可循,就很容易引起遗漏。
[0003]因此,现有技术还有待于改进和发展。
【发明内容】
[0004]鉴于上述现有技术的不足,本发明的目的在于提供基于Android系统的特征值定义和使用方法及系统,旨在解决现有的特征值定义和使用方法处理复杂、管理和维护不便的问题。
[0005]本发明的技术方案如下:
一种基于Android系统的特征值定义和使用方法,其中,包括步骤:
A、在特征值描述文件中按预定规则定义特征值,包括定义特征值的名称、类型、取值以及所应用的语言环境;
B、当需使用时,将特征值解析成当前语言环境下可识别的中间文件,将中间文件相应的形态加入到当前语言环境中,然后在当前语言环境中进行使用。
[0006]所述的基于Android系统的特征值定义和使用方法,其中,所述语言环境包括java、本地、内核及build。
[0007]所述的基于Android系统的特征值定义和使用方法,其中,所述步骤B中解析的过程具体包括:
将目标字段中有java的所有特征值解析成java语言可识别的静态常量;
将目标字段中有本地的所有特征值解析成本地代码编译器可识别的参数集合文件; 将目标字段中有内核的所有特征值解析成内核代码编译器可识别的参数集合文件; 将目标字段有build的所有特征值解析成Android系统编译器可识别的参数集合文件。
[0008]所述的基于Android系统的特征值定义和使用方法,其中,中间文件包括Feature, java、native, mk、kernel, mk 以及 build, mk ;
所述步骤B中中间文件加入到当前语言环境具体包括:
在 framework, jar 的编译配置文件 Android, mk 中,将 Feature, java 加入到 L0CAL_SRC_FILES 变量中;
把native, mk这个文件加入到Android编译系统的build/core/binary, mk中;
把kernel, mk这个文件加入到Android编译系统中的kernel编译环境中的kernel/Makefile文件中;
把build, mk这个文件加入到Android编译系统中的build/core/main, mk文件中。
[0009]所述的基于Android系统的特征值定义和使用方法,其中,所述步骤B中使用特征值的步骤包括:
在java语言中使用时,将特征值作为静态常量来使用;
在本地和内核中使用时,作为宏来使用;
在build语言中,将特征值作为变量来使用。
[0010]一种基于Android系统的特征值定义和使用系统,其中,包括:
定义模块,用于在特征值描述文件中按预定规则定义特征值,包括定义特征值的名称、类型、取值以及所应用的语言环境;
使用模块,用于当需使用时,将特征值解析成当前语言环境下可识别的中间文件,将中间文件相应的形态加入到当前语言环境中,然后在当前语言环境中进行使用。
[0011]所述的基于Android系统的特征值定义和使用系统,其中,所述语言环境包括java、本地、内核及build。
[0012]所述的基于Android系统的特征值定义和使用系统,其中,所述使用模块用于:
将目标字段中有java的所有特征值解析成java语言可识别的静态常量;
将目标字段中有本地的所有特征值解析成本地代码编译器可识别的参数集合文件; 将目标字段中有内核的所有特征值解析成内核代码编译器可识别的参数集合文件; 将目标字段有build的所有特征值解析成Android系统编译器可识别的参数集合文件。
[0013]所述的基于Android系统的特征值定义和使用系统,其中,中间文件包括Feature, java、native, mk、kernel, mk 以及 build, mk ;
所述使用模块还用于:
在 framework, jar 的编译配置文件 Android, mk 中,将 Feature, java 加入到 L0CAL_SRC_FILES 变量中;
把native, mk这个文件加入到Android编译系统的build/core/binary, mk中;
把kernel, mk这个文件加入到Android编译系统中的kernel编译环境中的kernel/Makefile文件中;
把build, mk这个文件加入到Android编译系统中的build/core/main, mk文件中。
[0014]所述的基于Android系统的特征值定义和使用系统,其中,所述使用模块用于:
在java语言中使用时,将特征值作为静态常量来使用;
在本地和内核中使用时,作为宏来使用;
在build语言中,将特征值作为变量来使用。
[0015]有益效果:本发明在特征值描述文件中定义特征值,然后在Android的编译阶段,用工具或脚本自动的把这些特征值转化成目标语言可以识别的中间文件,并把这些中间文件加入到目标代码会用到的作用域中去,从而实现一处定义即可在多种语言中使用的目的,对于开发者而言,无需再关注不同语言下的特征值定义,只需统一在特征值描述文件中描述特征值,这对于开发或者后续的维护来说都非常方便。
【附图说明】
[0016]图1为本发明基于Android系统的特征值定义和使用方法较佳实施例的流程图。
[0017]图2为本发明中特征值描述文件示例的格式示意图。
[0018]图3为图2的特征值描述文件解析得到的Feature, java文件的格式示意图。
[0019]图4为图2的特征值描述文件解析得到的native, mk文件的格式示意图。
[0020]图5为图2的特征值描述文件解析得到的kernel, mk文件的格式示意图。
[0021]图6为图2的特征值描述文件解析得到的build, mk文件的格式示意图。
[0022]图7为本发明基于Android系统的特征值定义和使用方法的架构图。
[0023]图8为图2的特征值描述文件在使用时作为宏来使用时的格式示意图。
[0024]图9为本发明基于Android系统的特征值定义和使用系统的结构框图。
【具体实施方式】
[0025]本发明提供基于Android系统的特征值定义和使用方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0026]请参阅图1,图1为本发明一种基于Android系统的特征值定义和使用方法较佳实施例的流程图,如图所示,其包括步骤:
5101、在特征值描述文件中按预定规则定义特征值,包括定义特征值的名称、类型、取值以及所应用的语言环境;
5102、当需使用时,将特征值解析成当前语言环境下可识别的中间文件,将中间文件相应的形态加入到当前语言环境中,然后在当前语言环境中进行使用。
[0027]在本实施例中,首先在特征值描述文件中描述特征值,主要包括特征值的名称、类型、取值以及所应用的语言环境。其是以文件描述的方式定义在单独的特征值描述文件feature, ini 中,其中:
1)、特征值的名称:将在不同语言环境中使用的变量名;
2)、特征值类型:将在不同语言环境中使用的变量类型,支持数值