一种二维码中声明数据信息类型的方法、装置及终端转让专利

申请号 : CN200810247026.0

文献号 : CN101488195B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 樊艳梅

申请人 : 华为终端有限公司

摘要 :

本发明是关于一种二维码中声明数据的信息类型的方法、装置及终端,所述的方法包括:生成应用数据类型信息;将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图。本发明定义了一个通用的架构,使得各种二维码的应用场景被归一化,使得通用的识读应用软件成为可能。

权利要求 :

1.一种二维码中声明数据类型的方法,其特征在于,所述的方法包括:

生成应用数据类型信息;

将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;将所述的应用数据类型信息与应用数据共同进行二维编码包括:将所述的应用数据进行二维编码,生成应用数据的二维码比特流;将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流连接,作为新的数据再进行二维编码,生成合成二维码比特流,并用这个合成的二维码比特流生成二维码码图。

2.如权利要求1所述的方法,其特征在于,将所述的应用数据进行二维编码,生成应用数据的二维码比特流包括:根据扩展通道说明ECI将所述的应用数据进行二维编码,生成包含至少两个ECI的码流;

将所述的包含至少两个ECI的码流进行二维编码,生成所述的应用数据的二维码比特流。

3.如权利要求1所述的方法,其特征在于,所述用这个合成的二维码比特流生成二维码码图包括:在所述的合成二维码比特流加入填充数据、纠错码、布置数据以及掩模数据。

4.如权利要求1所述的方法,其特征在于,所述生成应用数据类型信息是指:采用HTIP协议的Content Type的格式生成应用数据类型信息。

5.一种二维码中声明数据类型的装置,其特征在于,所述的装置包括:

信息生成单元,用于生成应用数据类型信息;

码图生成单元,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;所述的码图生成单元包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。

6.如权利要求5所述的装置,其特征在于,

所述码图生成单元,进一步用于在所述的合成二维码比特流加入填充数据、纠错码、布置数据以及掩模数据。

7.一种终端,所述终端包括二维码中声明数据类型的装置,其特征在于,所述装置包括:信息生成单元,用于生成应用数据类型信息;

码图生成单元,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;所述的码图生成单元包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。

说明书 :

一种二维码中声明数据信息类型的方法、装置及终端

技术领域

[0001] 本发明是关于二维码技术,具体的讲是关于一种二维码中声明数据信息类型的方法、装置及终端。

背景技术

[0002] 目前,二维码技术在手机上得到广泛的应用,手机条码已经随处可见,要在手机上应用二维码,手机除了必须具有摄像功能,还要下载相应的译码软件。由不同运营主体发布的二维码尽管使用相同的二维码技术,比如,Quick Response(QR)码技术,但是不同的应用层的格式会各不相同。
[0003] 如图1所示,为中国移动二维码的组成与使用的示意图。中国移动的手机二维码同时支持DR码和QR码。图中的码图被手机软件识别为7000,并且生成一个内容是7000的短信发送给700066,然后,在收到一个回复短信中包含了一个WAP网址,手机软件把地址提示给用户确认后,启动浏览器访问该WAP网站。从这个流程看,只有码图中包含的7000信息可以被任何的DR码软件识别,但是后续的发短信的内容和启动WAP浏览器的过程则是中国移动二维码上网业务的特定的动作,需要专门的软件来实现。
[0004] 再如日本Docomo的一个二维码应用phonebook registration,一个二维码图被识别为文本:MECARD:N:Docomo,Taro;SOUND:docomotaro;TEL:03XXXXXXXX;TEL:090XXXXXXXX;EMAIL:docomotaro@aa.bbb.co.jp;EMAIL:docomo.taro.xx@docomo。根 据Docomo的要求,如果文本中包含MECARD:,则按照如图2所示显示给用户,当用户选择“Add to phonebook”时,该联系人信息被导入到手机的电话号码本中。Docomo还有其他的业务,如有E-mailsynchronization(MATMSG)和Bookmark registration(MEBKM)等。为了支持这些业务,Docomo要对数据的格式进行规定,定义了多个标识符(identifiers),如MECARD、MATMSG、MEBKM等,不同的identifiers有不同的属性(property),如SOUND、TEL、TEL-AV、EMAIL等。
[0005] 另外,如图3所示,Docomo还在QR码图之外附加了information icons,以提供信息给用户,用于声明对手机软件能力要求。
[0006] 目前的二维码标准化注重于二维码自身的格式,对于应用来说,而对码所承载的内容是什么则更为重要。但是,我们目前看到的则是,各个运营商各自为政,对于用户来讲,即使类似导入电话本这类与运营商无关的业务,也需要安装多个软件来应对各个运营商的不同实现方法,例如,KDDI和Docomo定义了不同的电话号码本的格式。
[0007] 目前二维码主要是对文本编码,文本有着不同的含义。二维码可能作为任何文字的载体,作为文字识别的辅助信息。因此,我们需要一种统一的编码方法。

发明内容

[0008] 本发明实施例的目的在于提供一种二维码中声明数据的信息类型的方法及装置,用于定义一个统一的架构,实现二维码上承载各种数据类型信息。
[0009] 为了实现上述目的,本发明实施例提供一种二维码中声明数据的信息类型的方法,该方法包括:生成应用数据类型信息;将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;将所述的应用数据类型信息与应用数据共同进行二维编码包括:将所述的应用数据进行二维编码,生成应用数据的二维码比特流;将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流连接,作为新的数据再进行二维编码,生成合成二维码比特流,并用这个合成的二维码比特流生成二维码码图。
[0010] 为了实现上述目的,本发明实施例还提供一种二维码中声明数据的信息类型的装置,该装置包括:信息生成单元,用于生成应用数据类型信息;码图生成单元,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;所述的码图生成单元包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。
[0011] 为了实现上述目的,本发明实施例还提供一种终端,所述终端包括二维码中声明数据类型的装置,其中,所述装置包括:信息生成单元,用于生成应用数据类型信息;码图生成单元,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图;所述的码图生成单元包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。
[0012] 本发明实施例的有益效果:从上述方案可以看出,本发明实施例提供的一种二维码中声明数据的信息类型的方法,一种二维码中声明数据的信息类型的装置,由于将应用数据的声明信息加入应用数据中,形成了一个通用的架构,使得各种二维码的应用场景被归一化,使得通用的识读应用软件成为可能。

附图说明

[0013] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0014] 图1为现有技术中中国移动二维码的组成与使用的示意图;
[0015] 图2为现有技术Docomo中电话注册的示意图;
[0016] 图3为现有技术QR码图及其外面附加的信息图标;
[0017] 图4为本发明实施例的方法流程图;
[0018] 图5为本发明实施例的装置图;
[0019] 图6为本发明实施例的终端示意图;
[0020] 图7为本发明实施例的两个码流的对应关系图;
[0021] 图8为本发明实施例二维码码图的形成流程图。

具体实施方式

[0022] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023] 如图4所示,为本发明实施例的方法流程图,具体步骤如下:
[0024] 步骤S401:生成应用数据类型信息;
[0025] 步骤S401:将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图。
[0026] 在一优先实施例中,将所述的应用数据类型信息与应用数据共同进行二维编码包括:将所述的应用数据进行二维编码,生成应用数据的二维码比特流;将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。将所述的应用数据进行二维编码,生成应用数据的二维码比特流包括:根据扩展通道说明ECI将所述的应用数据进行二维编码,生成包含至少两个ECI的码流;将所述的包含至少两个ECI的码流进行二维编码,生成所述的应用数据的二维码比特流。在所述的合成二维码比特流加入填充数据、纠错码、布置数据以及掩模数据,生成所述的二维码码图。所述的生成应用数据类型信息是指:采用HTTP协议的Content Type的格式生成应用数据类型信息。
[0027] 如图5所示,为本发明实施例的装置结构图。所述的装置包括:信息生成单元501,用于生成应用数据类型信息;码图生成单元502,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图。
[0028] 在一优先实施例中,所述的码图生成单元502包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。所述的二维码码图的生成方式是指:在所述的合成二维码比特流加入填充数据、纠错码、布置数据以及掩模数据。
[0029] 本发明实施例提供一种终端,所述终端包含二维码中声明数据的信息类型的装置,所述终端例如可以是手机、个人数字助理,计算机等。下面仅以手机为例说明本发明实施例的终端。图6为本发明实施例的终端示意图。如图6所示,所述终端为手机600,所述手机包括二维码中声明数据的信息类型的装置601。所述的装置包括:信息生成单元501,用于生成应用数据类型信息;码图生成单元502,用于将所述的应用数据类型信息与应用数据共同进行二维编码,生成二维码码图。所述的码图生成单元包括:应用数据比特流生成模块,用于将所述的应用数据进行二维编码,生成应用数据的二维码比特流;应用数据类型信息比特流生成模块,用于将所述的应用数据类型信息进行二维编码,生成应用数据类型信息的二维码比特流;合成二维码比特流生成模块,用于将所述的应用数据的二维码比特流和应用数据类型信息的二维码比特流共同进行二维编码,生成合成二维码比特流。
[0030] 二维码(2-dimensional bar code)是一种新的编码技术,用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理。
[0031] 扩展通道说明ECI(Extended Channel Interpretation)已经被大多数的二维码技术支持。ECI支持压缩技术,它要求对数据源做压缩,并用ECI来声明该数据源所采用的压缩算法。一个二维码中,可能包含多个压缩算法,用不同的ECI来分割。对QR码编码过程,采用的编码为默认ECI,8位字节模式,进行二维码编码。
[0032] 本发明在二维码的应用数据上引入Content Type,并且遵循rfc2046的规范,使得这种表示方法具有通用性。为了引入Content Type,定义了一种数据格式来进行Content Type声明。采用类似HTTP的reponse header中Content Type的格式来声明数据的语义。Content Type格式如下:
[0033] ″Content-Type″″:″type″/″subtype*(″;″parameter)[0034] 例如,Content-Type:text/html;charset=ISO-8859-4。其中,Content-Type是可选的,若没有,则表示text/plain;charset=us-ascii。
[0035] 应用数据按照8位字节模式编码进行数据二维编码,即根据ECI规范转换为码流,这个码流可能含有多个ECI,所以,对这个码流再次应用8位字节模式编码,获得一个新的码流,新的码流只有一个ECI段。
[0036] 把Content Type声明信息附加到应用数据中,把Content Type声明信息,例如,Content-Type:text/html;charset=ISO-8859-4这个字符串利用字母数字模式进行数据编码,也转换为码流。
[0037] 然后,把两个码流连接起来。段2对应Content-Type声明,段1对应应用数据。对应关系如图7所示。
[0038] 将连接起来的两个码流按照8位字节模式编码进行二维编码。然后进行如图8所示的操作,就可以得到一个二维码码图。
[0039] 步骤S801:填充包括结束符在内的数据,填充到指定容量;
[0040] 步骤S802:添加纠错码,实现对编码的正确识读;
[0041] 步骤S803:按照需要对各部分的数据进行布置;
[0042] 步骤S804:掩模。
[0043] 本发明实施例的有益效果:本发明实施例提供的一种二维码中声明数据的信息类型的方法,一种二维码中声明数据的信息类型的装置,由于将应用数据的声明信息加入应用数据中,形成了一个通用的架构,使得各种二维码的应用场景被归一化,使得通用的识读应用软件成为可能。